From 6ba7b2d97fd6c8a9b960097d2c8c4caaacce4a07 Mon Sep 17 00:00:00 2001
From: OpenStack Jenkins <jenkins@openstack.org>
Date: Sat, 15 Feb 2014 06:17:16 +0000
Subject: [PATCH] Imported Translations from Transifex

Change-Id: Id20fd023c69d84a929f432304ab15e6c80c81b3b
---
 cinder/locale/ar/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/bg_BG/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/bn_IN/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/bs/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/ca/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/cinder.pot                  | 1624 ++++++++--------
 cinder/locale/cs/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/da/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/de/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/en_AU/LC_MESSAGES/cinder.po | 1967 ++++++++++---------
 cinder/locale/en_GB/LC_MESSAGES/cinder.po | 1967 ++++++++++---------
 cinder/locale/en_US/LC_MESSAGES/cinder.po | 2080 +++++++++++----------
 cinder/locale/es/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/es_MX/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/eu/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/eu_ES/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/fa/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/fi_FI/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/fil/LC_MESSAGES/cinder.po   | 1963 ++++++++++---------
 cinder/locale/fr/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/gl/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/he/LC_MESSAGES/cinder.po    | 1960 ++++++++++---------
 cinder/locale/he_IL/LC_MESSAGES/cinder.po | 1960 ++++++++++---------
 cinder/locale/hi/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/hr/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/hu/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/id/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/is_IS/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/it/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/it_IT/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/ja/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/ka_GE/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/km/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/kn/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/ko/LC_MESSAGES/cinder.po    | 1967 ++++++++++---------
 cinder/locale/ko_KR/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/ml_IN/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/mr_IN/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/ms/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/nb/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/ne/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/nl_NL/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/pa_IN/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/pl_PL/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/pt/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/pt_BR/LC_MESSAGES/cinder.po | 1967 ++++++++++---------
 cinder/locale/ro/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/ru/LC_MESSAGES/cinder.po    | 1977 +++++++++++---------
 cinder/locale/ru_RU/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/sk/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/sl_SI/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/sv/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/sw_KE/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/tl/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/tl_PH/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/tr/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/tr_TR/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/uk/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/ur/LC_MESSAGES/cinder.po    | 1963 ++++++++++---------
 cinder/locale/vi_VN/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/zh_CN/LC_MESSAGES/cinder.po | 1973 ++++++++++---------
 cinder/locale/zh_HK/LC_MESSAGES/cinder.po | 1963 ++++++++++---------
 cinder/locale/zh_TW/LC_MESSAGES/cinder.po | 1967 ++++++++++---------
 63 files changed, 66027 insertions(+), 57482 deletions(-)

diff --git a/cinder/locale/ar/LC_MESSAGES/cinder.po b/cinder/locale/ar/LC_MESSAGES/cinder.po
index cf2fe75d8..845d43f57 100644
--- a/cinder/locale/ar/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ar/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-09-12 07:56+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Arabic "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10105,14 +10207,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10140,16 +10234,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10168,19 +10252,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10193,230 +10267,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/bg_BG/LC_MESSAGES/cinder.po b/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
index 0e89a873b..5de4c113e 100644
--- a/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bg_BG/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bulgarian (Bulgaria) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/bn_IN/LC_MESSAGES/cinder.po b/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
index 00250f99b..824ee0198 100644
--- a/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bn_IN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-10-20 01:34+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Bengali (India) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9768,14 +9870,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9803,16 +9897,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9831,19 +9915,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9856,230 +9930,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/bs/LC_MESSAGES/cinder.po b/cinder/locale/bs/LC_MESSAGES/cinder.po
index 7296df6ce..2dc0ba461 100644
--- a/cinder/locale/bs/LC_MESSAGES/cinder.po
+++ b/cinder/locale/bs/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-01-19 20:22+0000\n"
 "Last-Translator: yazar  <zrncescientiae@gmail.com>\n"
 "Language-Team: Bosnian <bs@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,32 +341,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1474,37 +1495,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1515,17 +1536,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1533,20 +1554,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1759,282 +1780,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2360,50 +2381,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2519,57 +2540,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2592,17 +2613,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2612,22 +2633,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2652,33 +2673,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2695,11 +2721,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2737,22 +2763,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Status volumena mora biti omogućen"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2977,11 +3003,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3124,7 +3155,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3135,7 +3165,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3302,7 +3331,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3310,210 +3339,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3550,6 +3591,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3579,142 +3624,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3873,12 +3911,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3924,7 +3962,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3933,12 +3971,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3946,7 +3984,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4031,7 +4069,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4062,175 +4100,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Status volumena mora biti omogućen"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Status volumena mora biti omogućen"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Status volumena mora biti omogućen"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4264,59 +4321,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4324,10 +4381,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4398,7 +4493,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4408,197 +4503,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4652,65 +4757,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4810,7 +4886,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4894,207 +4969,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5165,56 +5255,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5234,42 +5304,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5478,176 +5548,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7055,123 +7125,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7180,71 +7250,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7278,198 +7348,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7477,8 +7547,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7493,7 +7563,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7502,27 +7572,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7627,7 +7697,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8390,42 +8460,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8444,160 +8478,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Neočekivana greška prilikom pokretanja komande."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9321,7 +9435,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9414,7 +9528,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9450,120 +9564,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10426,14 +10528,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10461,16 +10555,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10489,19 +10573,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10514,230 +10588,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Neočekivana greška prilikom pokretanja komande."
+
diff --git a/cinder/locale/ca/LC_MESSAGES/cinder.po b/cinder/locale/ca/LC_MESSAGES/cinder.po
index ad8e93fe5..cd2b31800 100644
--- a/cinder/locale/ca/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ca/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Catalan "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/cinder.pot b/cinder/locale/cinder.pot
index 8a5111ad4..b716bfd68 100644
--- a/cinder/locale/cinder.pot
+++ b/cinder/locale/cinder.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: cinder jenkins.cinder.propose.translation.update.274\n"
+"Project-Id-Version: cinder jenkins.cinder.propose.translation.update.286\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,32 +341,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1474,37 +1495,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1515,17 +1536,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1533,20 +1554,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1755,282 +1776,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2356,50 +2377,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2515,57 +2536,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2588,17 +2609,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2608,22 +2629,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2648,33 +2669,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2691,11 +2717,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2733,21 +2759,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2972,11 +2998,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3119,7 +3150,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3130,7 +3160,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3297,7 +3326,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3305,210 +3334,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3545,6 +3586,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3574,142 +3619,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3868,12 +3906,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3919,7 +3957,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3928,12 +3966,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3941,7 +3979,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4026,7 +4064,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4057,172 +4095,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4256,59 +4313,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4316,10 +4373,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4390,7 +4485,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4400,197 +4495,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4644,65 +4749,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4802,7 +4878,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4886,207 +4961,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5157,56 +5247,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5226,42 +5296,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5470,176 +5540,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7047,123 +7117,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7172,71 +7242,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7270,198 +7340,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7469,8 +7539,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7485,7 +7555,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7494,27 +7564,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7619,7 +7689,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8382,42 +8452,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8436,160 +8470,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9313,7 +9427,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9406,7 +9520,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9442,120 +9556,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
diff --git a/cinder/locale/cs/LC_MESSAGES/cinder.po b/cinder/locale/cs/LC_MESSAGES/cinder.po
index 59699aae6..8ff0de21a 100644
--- a/cinder/locale/cs/LC_MESSAGES/cinder.po
+++ b/cinder/locale/cs/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-04-04 20:28+0000\n"
 "Last-Translator: Zbyněk Schwarz <Unknown>\n"
 "Language-Team: Czech <cs@li.org>\n"
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "Vyskytla se neočekávaná výjimka."
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr "Kernel nenalezen v obrazu %(image_id)s."
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Nepřijatelné parametry."
 
@@ -131,7 +131,7 @@ msgstr "Neplatný typ obsahu %(content_type)s."
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr "Zdroj nemohl být nalezen."
 
@@ -345,34 +345,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
+msgid "Volume type encryption for type %(type_id)s does not exist."
+msgstr ""
+
+#: cinder/exception.py:377
+#, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Poškozené tělo zprávy: %(reason)s"
 
-#: cinder/exception.py:377
+#: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Nelze najít nastavení v %(path)s"
 
-#: cinder/exception.py:381
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Nelze najít nastavení v %(path)s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "Nelze načíst aplikaci vložení '%(name)s' z %(path)s"
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "Nebyl nalezen žádný platný hostitel. %(reason)s"
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr "Hostitel %(host)s není dostupný nebo neexistuje."
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -665,6 +665,11 @@ msgstr "Vyskytla se neočekávaná výjimka."
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "Oznamování schopností plácinderčům ..."
@@ -700,11 +705,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -819,46 +824,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr "Zastavování serveru WSGI."
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr "Server WSGI byl zastaven."
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "Musíte zavést __call__"
 
@@ -874,11 +879,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr "parametr limit musí být celé číslo"
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr "parametr limit musí být kladný"
 
@@ -1001,7 +1006,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr "podtřídy musí zavádět construct()!"
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1298,7 +1303,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1311,7 +1332,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Zachycena chyba: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s vrácena s HTTP %(status)d"
@@ -1359,47 +1380,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr "JSON nelze porozumět"
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr "příliš mnoho klíčů těla"
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, fuzzy, python-format
 msgid "Exception handling resource: %s"
 msgstr "Rozšířený zdroj: %s"
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr "Vyvolána chyba: %s"
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr "Vyvolána výjimka HTTP: %s"
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr "V požadavku zadáno prázdné tělo"
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr "V požadavku zadán nerozpoznaný Content-Type"
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr "V požadavku nezadán Content-Type"
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr "Žádná taková činnost: %s"
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1411,15 +1432,15 @@ msgstr "Žádná taková činnost: %s"
 msgid "Malformed request body"
 msgstr "Poškozené tělo požadavku"
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr "Nepodporovaný Content-Type"
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr "Poškozená url požadavku"
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr "%(url)s vrátilo chybu: %(e)s"
@@ -1491,37 +1512,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "Server neexistuje"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr "Zadáno neplatné imageRef."
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Vytvořit svazek o %s GB"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
@@ -1532,17 +1553,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1550,20 +1571,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "Odstraňování voleb '%(unk_opt_str)s' z fronty"
@@ -1776,282 +1797,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2377,50 +2398,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, fuzzy, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2536,57 +2557,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nenalezeno žádné cílové id ve svazku %(volume_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2609,17 +2630,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2629,22 +2650,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2669,33 +2690,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Nelze použít globální roli %(role_id)s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2712,11 +2738,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2754,22 +2780,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Obraz musí být dostupný"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2994,11 +3020,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, fuzzy, python-format
 msgid "Original exception being dropped: %s"
 msgstr "Původní výjimka je zahozena"
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3143,7 +3174,6 @@ msgstr "Spouštění příkazu (podproces): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Výsledek byl %s"
@@ -3154,7 +3184,6 @@ msgid "%r failed. Retrying."
 msgstr "%r selhalo. Opakování."
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Spouštění příkazu (SSH): %s"
@@ -3322,7 +3351,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3330,211 +3359,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "rozbalený kontext: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "obdrženo: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "pro zprávu není metoda: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Pro zprávu není metoda: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID je %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "Vyskytla se neočekávaná výjimka."
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "Neplatné znovu použití připojení RPC."
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Volajícímu je vrácena výjimka: %s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3571,6 +3612,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3601,143 +3646,136 @@ msgstr "Zrušení registrace obrazu %s"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "obdrženo: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "Požadavek je neplatný."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3896,12 +3934,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3947,7 +3985,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3956,12 +3994,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3969,7 +4007,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4055,7 +4093,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4086,174 +4124,193 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Obraz musí být dostupný"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Obraz musí být dostupný"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4287,59 +4344,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Nelze najít obslužnou rutinu pro svazek %(driver_type)s."
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4347,10 +4404,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, fuzzy, python-format
+msgid "Symbolic link %s not found"
+msgstr "značka [%s] nenalezena"
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4421,7 +4516,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4431,197 +4526,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "Připojit svazek %(volume_id)s k instanci %(instance_id)s na %(device)s"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4675,65 +4780,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Vytvořit snímek svazku %s"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4833,7 +4909,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4917,207 +4992,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, fuzzy, python-format
 msgid "Exception during mounting %s"
 msgstr "Výjimka při načítání rozšíření: %s"
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5188,56 +5278,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, fuzzy, python-format
-msgid "Symbolic link %s not found"
-msgstr "značka [%s] nenalezena"
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5257,42 +5327,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "skupina %s již existuje"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5502,178 +5572,178 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "odpověď %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Nelze získat metadata pro ip: %s"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Nelze vytvořit typ instance"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7087,123 +7157,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7212,71 +7282,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7310,198 +7380,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7509,8 +7579,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7530,7 +7600,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7539,27 +7609,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7664,7 +7734,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8428,42 +8498,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8482,160 +8516,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Při spuštění příkazu došlo k nečekané chybě."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "skupina %s již existuje"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9359,7 +9473,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9452,7 +9566,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9488,120 +9602,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10464,14 +10566,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "Vyvoláno Nenalezeno: %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10499,16 +10593,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10527,19 +10611,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr "mazání svazku %(volume_name)s který má snímek"
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10552,230 +10626,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
 #~ msgstr ""
 
+#~ msgid "Host %(host)s is not up or doesn't exist."
+#~ msgstr "Hostitel %(host)s není dostupný nebo neexistuje."
+
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Při spuštění příkazu došlo k nečekané chybě."
+
diff --git a/cinder/locale/da/LC_MESSAGES/cinder.po b/cinder/locale/da/LC_MESSAGES/cinder.po
index 3688a9556..d87298c93 100644
--- a/cinder/locale/da/LC_MESSAGES/cinder.po
+++ b/cinder/locale/da/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-01-15 21:46+0000\n"
 "Last-Translator: Soren Hansen <soren@linux2go.dk>\n"
 "Language-Team: Danish <da@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,32 +341,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1474,37 +1495,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1515,17 +1536,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1533,20 +1554,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1755,282 +1776,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2356,50 +2377,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2515,57 +2536,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2588,17 +2609,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2608,22 +2629,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2648,33 +2669,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2691,11 +2717,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2733,21 +2759,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2972,11 +2998,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3119,7 +3150,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3130,7 +3160,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3297,7 +3326,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3305,210 +3334,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3545,6 +3586,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3574,142 +3619,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3868,12 +3906,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3919,7 +3957,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3928,12 +3966,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3941,7 +3979,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4026,7 +4064,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4057,172 +4095,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4256,59 +4313,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4316,10 +4373,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4390,7 +4485,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4400,197 +4495,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "bind %s: slettet"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4644,65 +4749,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4802,7 +4878,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4886,207 +4961,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5157,56 +5247,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5226,42 +5296,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5470,176 +5540,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7047,123 +7117,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7172,71 +7242,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7270,198 +7340,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7469,8 +7539,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7485,7 +7555,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7494,27 +7564,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7619,7 +7689,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8382,42 +8452,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8436,160 +8470,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9313,7 +9427,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9406,7 +9520,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9442,120 +9556,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10418,14 +10520,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10453,16 +10547,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10481,19 +10565,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10506,230 +10580,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/de/LC_MESSAGES/cinder.po b/cinder/locale/de/LC_MESSAGES/cinder.po
index 747945fe9..b445e17d1 100644
--- a/cinder/locale/de/LC_MESSAGES/cinder.po
+++ b/cinder/locale/de/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-08-23 11:23+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: German <de@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "keine Methode für diese Nachricht gefunden: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,22 +2760,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume %s: wird erstellt"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr "Führe Kommando (subprocess) aus: %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Ergebnis war %s"
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "keine Methode für diese Nachricht gefunden: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "keine Methode für diese Nachricht gefunden: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID ist %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "keine Methode für diese Nachricht gefunden: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Nicht möglich volume %s zufinden"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr "Volume %s: wird entfernt"
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "Volume %s: entferne Export"
@@ -4402,197 +4497,207 @@ msgstr "Volume %s: entferne Export"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "Volume %s: erfolgreich entfernt"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7492,7 +7562,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7501,27 +7571,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7626,7 +7696,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8389,42 +8459,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8443,160 +8477,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Unerwarteter Fehler bei Ausführung des Kommandos."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9320,7 +9434,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9413,7 +9527,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9449,120 +9563,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10425,14 +10527,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10460,16 +10554,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10488,19 +10572,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10513,230 +10587,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Unerwarteter Fehler bei Ausführung des Kommandos."
+
diff --git a/cinder/locale/en_AU/LC_MESSAGES/cinder.po b/cinder/locale/en_AU/LC_MESSAGES/cinder.po
index 8f45a5b14..f8d0e1d1d 100644
--- a/cinder/locale/en_AU/LC_MESSAGES/cinder.po
+++ b/cinder/locale/en_AU/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-10-21 11:27+0000\n"
 "Last-Translator: Tom Fifield <Unknown>\n"
 "Language-Team: English (Australia) <en_AU@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "Not authorized for image %(image_id)s."
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find parameter %(param)s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Unable to find cert_file : %s"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Unable to find ca_file : %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Unable to find key_file : %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "You must implement __call__"
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Caught error: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "volume does not exist"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume of %s GB"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1761,282 +1782,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2362,50 +2383,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Failed to create iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Failed to remove iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2521,57 +2542,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2594,17 +2615,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2614,22 +2635,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2654,33 +2675,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Unable to find LV: %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2697,11 +2723,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2739,22 +2765,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume must be available"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2979,11 +3005,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3126,7 +3157,6 @@ msgstr "Running cmd (subprocess): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Result was %s"
@@ -3137,7 +3167,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Running cmd (SSH): %s"
@@ -3305,7 +3334,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3313,210 +3342,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "unpacked context: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "received %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "no method for message: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "No method for message: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID is %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Returning exception %s to caller"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3553,6 +3594,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3583,143 +3628,136 @@ msgstr "Registering reactor"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "Received message: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "Matchmaker does not implement registration or heartbeat."
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3879,12 +3917,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3930,7 +3968,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3939,12 +3977,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3952,7 +3990,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4037,7 +4075,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4068,175 +4106,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Volume status must be available to reserve"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Volume Snapshot status must be available or error"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Volume status must be available/in-use."
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4270,59 +4327,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export  for volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4330,10 +4387,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4405,7 +4500,7 @@ msgstr "volume %s: deleting"
 msgid "volume is not local to this node"
 msgstr "Volume is not local to this node"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
@@ -4415,197 +4510,207 @@ msgstr "volume %s: removing export"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4659,65 +4764,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Creating clone of volume: %s"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4817,7 +4893,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4901,207 +4976,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "casted to %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5172,56 +5262,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5241,42 +5311,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "%s is already mounted"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5487,178 +5557,178 @@ msgstr "Sheepdog is not working: %s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog is not working"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "API response: %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Failed to get model update from clone"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Failed to get updated stats"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7067,123 +7137,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7192,71 +7262,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7290,198 +7360,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7489,8 +7559,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7510,7 +7580,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7519,27 +7589,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7644,7 +7714,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8407,42 +8477,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8461,160 +8495,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Error running ssh command: %s"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "Volume (%s) already exists on array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9338,7 +9452,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9431,7 +9545,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9467,120 +9581,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10443,14 +10545,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "wait wrap.failed %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10478,16 +10572,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10506,19 +10590,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s mapping to multi host"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10531,230 +10605,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Error running ssh command: %s"
+
diff --git a/cinder/locale/en_GB/LC_MESSAGES/cinder.po b/cinder/locale/en_GB/LC_MESSAGES/cinder.po
index b687c0223..ebcabfa51 100644
--- a/cinder/locale/en_GB/LC_MESSAGES/cinder.po
+++ b/cinder/locale/en_GB/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-03-30 11:10+0000\n"
 "Last-Translator: Anthony Harrington <untaintableangel@hotmail.co.uk>\n"
 "Language-Team: English (United Kingdom) <en_GB@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "An unknown exception occurred."
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Unacceptable parameters."
 
@@ -130,7 +130,7 @@ msgstr "Invalid content type %(content_type)s."
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,34 +342,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find parameter %(param)s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -660,6 +660,11 @@ msgstr "Unknown Gluster exception"
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -695,11 +700,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -814,46 +819,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Unable to find cert_file : %s"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Unable to find ca_file : %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Unable to find key_file : %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -869,11 +874,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -994,7 +999,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1289,7 +1294,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1302,7 +1323,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1350,47 +1371,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1402,15 +1423,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1479,37 +1500,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1520,17 +1541,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1538,20 +1559,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1764,282 +1785,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2365,50 +2386,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2524,57 +2545,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2597,17 +2618,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2617,22 +2638,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2657,33 +2678,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Unable to find LV: %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2700,11 +2726,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2742,22 +2768,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume must be available"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2982,11 +3008,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3129,7 +3160,6 @@ msgstr "Running cmd (subprocess): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Result was %s"
@@ -3140,7 +3170,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Running cmd (SSH): %s"
@@ -3308,7 +3337,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3316,211 +3345,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "An unknown RPC related exception occurred"
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "Invalid reuse of an RPC connection."
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3557,6 +3598,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3586,144 +3631,137 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "Received message: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "RPC Message Invalid."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "Matchmaker does not implement registration or heartbeat."
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3882,12 +3920,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3933,7 +3971,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3942,12 +3980,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3955,7 +3993,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4041,7 +4079,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4072,175 +4110,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Volume status must be available to reserve"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Volume Snapshot status must be available or error"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Volume status must be available/in-use."
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4274,59 +4331,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export for volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4334,10 +4391,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4409,7 +4504,7 @@ msgstr "volume %s: deleting"
 msgid "volume is not local to this node"
 msgstr "Volume is not local to this node"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
@@ -4419,197 +4514,207 @@ msgstr "volume %s: removing export"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4663,65 +4768,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4821,7 +4897,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4905,207 +4980,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "casted to %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5176,56 +5266,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5245,42 +5315,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5490,177 +5560,177 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Failed to get updated stats"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7068,123 +7138,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7193,71 +7263,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7291,198 +7361,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7490,8 +7560,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7511,7 +7581,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7520,27 +7590,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7645,7 +7715,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8408,42 +8478,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8462,160 +8496,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Error running ssh command: %s"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9339,7 +9453,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9432,7 +9546,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9468,120 +9582,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10444,14 +10546,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10479,16 +10573,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10507,19 +10591,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s mapping to multi host"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10532,230 +10606,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Error running ssh command: %s"
+
diff --git a/cinder/locale/en_US/LC_MESSAGES/cinder.po b/cinder/locale/en_US/LC_MESSAGES/cinder.po
index c39f8754a..abd6e3198 100644
--- a/cinder/locale/en_US/LC_MESSAGES/cinder.po
+++ b/cinder/locale/en_US/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: markmc <markmc@redhat.com>\n"
 "Language-Team: en_US <LL@li.org>\n"
@@ -27,11 +27,11 @@ msgstr "Arguments dropped when creating context: %s"
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "An unknown exception occurred."
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr "Exception in string format operation"
 
@@ -77,7 +77,7 @@ msgstr "Not authorized for image %(image_id)s."
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Unacceptable parameters."
 
@@ -129,7 +129,7 @@ msgstr "Invalid content type %(content_type)s."
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr "Expected a uuid but received %(uuid)s."
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr "Resource could not be found."
 
@@ -345,34 +345,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
+msgid "Volume type encryption for type %(type_id)s does not exist."
+msgstr ""
+
+#: cinder/exception.py:377
+#, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Malformed message body: %(reason)s"
 
-#: cinder/exception.py:377
+#: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Could not find config at %(path)s"
 
-#: cinder/exception.py:381
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Could not find config at %(param)s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "Could not load paste app '%(name)s' from %(path)s"
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "No valid host was found. %(reason)s"
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr "Host %(host)s is not up or doesn't exist."
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -663,6 +663,11 @@ msgstr "Unknown Gluster exception"
 msgid "No mounted Gluster shares found"
 msgstr "No mounted Gluster shares found"
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "Notifying Schedulers of capabilities ..."
@@ -698,11 +703,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -818,22 +823,22 @@ msgstr "Could not remove tmpdir: %s"
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Unable to find cert_file : %s"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Unable to find ca_file : %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Unable to find key_file : %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
@@ -841,25 +846,25 @@ msgstr ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr "Stopping WSGI server."
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr "WSGI server has stopped."
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "You must implement __call__"
 
@@ -875,11 +880,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr "limit param must be an integer"
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr "limit param must be positive"
 
@@ -1002,7 +1007,7 @@ msgstr "Template tree mismatch; adding slave %(slavetag)s to master %(mastertag)
 msgid "subclasses must implement construct()!"
 msgstr "subclasses must implement construct()!"
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr "Updating %(resource)s '%(id)s' with '%(update)r'"
@@ -1298,7 +1303,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1311,7 +1332,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Caught error: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s returned with HTTP %(status)d"
@@ -1361,47 +1382,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr "cannot understand JSON"
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr "too many body keys"
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr "Exception handling resource: %s"
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr "Fault thrown: %s"
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr "HTTP exception thrown: %s"
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr "Empty body provided in request"
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr "Unrecognized Content-Type provided in request"
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr "No Content-Type provided in request"
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr "There is no such action: %s"
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1413,15 +1434,15 @@ msgstr "There is no such action: %s"
 msgid "Malformed request body"
 msgstr "Malformed request body"
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr "Unsupported Content-Type"
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr "Malformed request url"
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr "%(url)s returned a fault: %(e)s"
@@ -1491,37 +1512,37 @@ msgstr "Invalid value '%s' for force. "
 msgid "volume does not exist"
 msgstr "volume does not exist"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr "vol=%s"
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr "Delete volume with id: %s"
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr "Invalid imageRef provided."
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume of %s GB"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Removing options '%(bad_options)s' from query"
@@ -1532,17 +1553,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1550,20 +1571,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr "Removing options '%s' from query"
@@ -1774,282 +1795,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2395,50 +2416,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Failed to create iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Failed to remove iscsi target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "Failed to attach iSCSI target for volume %(volume_id)s."
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2554,35 +2575,35 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr "Creating iscsi_target for: %s"
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
@@ -2591,22 +2612,22 @@ msgstr ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr "Removing iscsi_target for: %s"
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr "valid iqn needed for show_target"
 
@@ -2629,17 +2650,17 @@ msgstr "Creating iscsi_target for volume: %s"
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Removing iscsi_target: %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr "Failed to add initiator iqn %s to target"
@@ -2650,22 +2671,22 @@ msgid "Error creating Volume Group"
 msgstr "Error creating Volume Group"
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, fuzzy, python-format
 msgid "StdOut  :%s"
 msgstr "StdOut  :%s"
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, fuzzy, python-format
 msgid "StdErr  :%s"
 msgstr "StdErr  :%s"
@@ -2690,33 +2711,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Unable to find LV: %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2733,11 +2759,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2775,22 +2801,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume must be available"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -3019,11 +3045,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr "Original exception being dropped: %s"
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3168,7 +3199,6 @@ msgstr "Running cmd (subprocess): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Result was %s"
@@ -3179,7 +3209,6 @@ msgid "%r failed. Retrying."
 msgstr "%r failed. Retrying."
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Running cmd (SSH): %s"
@@ -3348,7 +3377,7 @@ msgstr "The rabbit_notifier is now deprecated. Please use rpc_notifier instead."
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr "Could not send notification to %(topic)s. Payload=%(message)s"
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3359,89 +3388,92 @@ msgstr ""
 "%(locks)s. This is probably a bug. Please report it. Include the "
 "following: [%(stack)s]."
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr "Pool creating new connection"
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
-msgstr "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "unpacked context: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr "UNIQUE_ID is %s."
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "received %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "no method for message: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "No method for message: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr "Expected exception during message handling (%s)"
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr "Exception during message handling"
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr "Making synchronous call on %s ..."
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID is %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr "Making asynchronous cast on %s..."
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr "Making asynchronous fanout cast..."
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr "Sending %(event_type)s on %(topic)s"
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr "An unknown RPC related exception occurred."
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
@@ -3450,7 +3482,7 @@ msgstr ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
@@ -3459,27 +3491,27 @@ msgstr ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr "<unknown>"
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr "Found duplicate message(%(msg_id)s). Skipping it."
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "Invalid reuse of an RPC connection."
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr "Specified RPC version, %(version)s, not supported by this endpoint."
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
@@ -3488,32 +3520,35 @@ msgstr ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
-msgstr "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
+msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Returning exception %s to caller"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
-msgstr "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
+msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr "Connected to AMQP server on %(hostname)s:%(port)d"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
@@ -3522,7 +3557,7 @@ msgstr ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
@@ -3531,50 +3566,54 @@ msgstr ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr "Timed out waiting for RPC response: %s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr "Failed to consume message from queue: %s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr "Failed to publish message to topic '%(topic)s': %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr "Failed to process message... skipping it."
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr "Connected to AMQP server on %s"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr "Re-established AMQP queues"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr "Error processing message.  Skipping it."
 
@@ -3611,6 +3650,10 @@ msgstr "Could not open socket."
 msgid "Subscribing to %s"
 msgstr "Subscribing to %s"
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr "You cannot recv on this socket."
@@ -3640,142 +3683,135 @@ msgstr "Registering reactor"
 msgid "In reactor registered"
 msgstr "In reactor registered"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr "Consuming socket"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr "Creating proxy for topic: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr "Topic contained dangerous characters."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr "Topic socket file creation failed."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr "CONSUMER RECEIVED DATA: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr "ZMQ Envelope version unsupported or unknown."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr "Skipping topic registration. Already registered."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr "Consumer is a zmq.%s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr "Creating payload"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr "Creating queue socket for reply waiter"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr "Sending cast"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr "Cast sent; Waiting reply"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr "Received message: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr "Unpacking response"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr "Unsupported or unknown ZMQ envelope returned."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr "RPC Message Invalid."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr "%(msg)s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr "Sending message(s) to: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr "No matchmaker results. Not casting."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr "No match from matchmaker."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr "Match not found by MatchMaker."
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "Matchmaker does not implement registration or heartbeat."
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
-msgstr "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
+msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr "Register before starting heartbeat."
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr "No key defining hosts for topic '%s', see ringfile"
@@ -3938,12 +3974,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3991,7 +4027,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -4000,12 +4036,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr "unrecognized argument %s"
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr "Run CLI command: %s"
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -4016,7 +4052,7 @@ msgstr ""
 " stdout: %(stdout)s\n"
 " stderr: %(stderr)s"
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4108,7 +4144,7 @@ msgstr "Decoding JSON: %s"
 msgid "Volume in unexpected state"
 msgstr "Volume in unexpected state"
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr "status must be available"
 
@@ -4141,60 +4177,72 @@ msgstr "Failed to update quota donating volumetransfer id %s"
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr "Failed to update quota for deleting volume"
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr "Volume still has %d dependent snapshots"
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr "Searching by: %s"
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr "already attached"
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr "Volume status must be available to reserve"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr "must be available"
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
@@ -4203,7 +4251,7 @@ msgstr ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
@@ -4212,105 +4260,112 @@ msgstr ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr "Volume Snapshot status must be available or error"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr "Metadata property key blank"
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr "Metadata property key greater than 255 characters"
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr "Metadata property value greater than 255 characters"
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr "Volume status must be available/in-use."
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr "Volume status is in-use."
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4344,59 +4399,59 @@ msgstr "copy_image_to_volume %s."
 msgid "copy_volume_to_image %s."
 msgstr "copy_volume_to_image %s."
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "ISCSI provider_location not stored, using discovery"
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Could not find iSCSI export for volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery: Found %s"
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4404,10 +4459,50 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr "Driver must implement initialize_connection"
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr "Detected inconsistency in provider_location id"
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr "Symbolic link %s not found"
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr "Skipping ensure_export. No iscsi_target provision for volume: %s"
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4478,7 +4573,7 @@ msgstr "volume %s: deleting"
 msgid "volume is not local to this node"
 msgstr "volume is not local to this node"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removing export"
@@ -4488,197 +4583,207 @@ msgstr "volume %s: removing export"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr "Failed to update usages deleting volume"
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: deleted successfully"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "snapshot %s: creating"
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "snapshot %s: created successfully"
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "snapshot %s: deleting"
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr "Failed to update usages deleting snapshot"
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "snapshot %s: deleted successfully"
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr "being attached by another instance"
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr "Updating volume status"
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr "Notification {%s} received"
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4732,13 +4837,18 @@ msgstr ""
 msgid "name cannot be None"
 msgstr "name cannot be None"
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
+#: cinder/volume/utils.py:199
+#, python-format
+msgid "Performing secure delete on volume: %s"
+msgstr "Performing secure delete on volume: %s"
+
 #: cinder/volume/volume_types.py:130
 #, python-format
 msgid ""
@@ -4748,53 +4858,17 @@ msgstr ""
 "Default volume type is not found, please check default_volume_type "
 "config: %s"
 
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr "Skipping ensure_export. No iscsi_target provision for volume: %s"
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
-#, python-format
-msgid "Performing secure delete on volume: %s"
-msgstr "Performing secure delete on volume: %s"
-
-#: cinder/volume/drivers/block_device.py:287
-#, python-format
-msgid "Error unrecognized volume_clear option: %s"
-msgstr "Error unrecognized volume_clear option: %s"
-
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Creating clone of volume: %s"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4894,7 +4968,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4978,207 +5051,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr "There's no Gluster config file configured (%s)"
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr "Gluster config file at %(config)s doesn't exist"
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr "mount.glusterfs is not installed"
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr "casted to %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr "Volume %s does not have provider_location specified, skipping"
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr "Exception during mounting %s"
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5249,56 +5337,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr "snapshot: %s not found, skipping delete operations"
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr "Detected inconsistency in provider_location id"
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr "Symbolic link %s not found"
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5318,42 +5386,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "%s is already mounted"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr "There's no NFS config file configured (%s)"
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr "NFS config file at %(config)s doesn't exist"
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5563,176 +5631,176 @@ msgstr "Sheepdog is not working: %s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog is not working"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr "Payload for SolidFire API call: %s"
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr "Call to json.loads() raised an exception: %s"
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr "Results of SolidFire API call: %s"
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr "Clone operation encountered: %s"
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr "Waiting for outstanding operation before retrying snapshot: %s"
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr "Detected xDBVersionMismatch, retry %s of 5"
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr "API response: %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr "Found solidfire account: %s"
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr "solidfire account: %s does not exist, create it..."
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr "Failed to get model update from clone"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr "More than one valid preset was detected, using %s"
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr "Volume %s, not found on SF Cluster."
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr "Found %(count)s volumes mapped to id: %(uuid)s."
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr "Enter SolidFire delete_volume..."
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr "Account for Volume ID %s was not found on the SolidFire Cluster!"
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr "Volume ID %s was not found on the SolidFire Cluster!"
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr "Leaving SolidFire delete_volume"
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr "Executing SolidFire ensure_export..."
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr "Executing SolidFire create_export..."
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr "Updating cluster status info"
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr "Failed to get updated stats"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7257,48 +7325,48 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr "enter: do_setup"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr "leave: do_setup"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr "enter: check_for_setup_error"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr "%s is not set"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
@@ -7306,7 +7374,7 @@ msgstr ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
@@ -7315,44 +7383,44 @@ msgstr ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr "leave: check_for_setup_error"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr "ensure_export: Volume %s not found on storage"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr "initialize_connection: Failed to get attributes for volume %s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr "Did not find expected column name in lsvdisk: %s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr "initialize_connection: Missing volume attribute for volume %s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
@@ -7361,18 +7429,18 @@ msgstr ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr "initialize_connection: Did not find a preferred node for volume %s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
@@ -7381,7 +7449,7 @@ msgstr ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7394,71 +7462,71 @@ msgstr ""
 " connector %(conn)s\n"
 " properties: %(prop)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr "create_volume_from_snapshot: Source and destination size differ."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr "create_cloned_volume: Source and destination size differ."
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr "Could not get pool data from the storage"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7492,71 +7560,71 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
@@ -7564,7 +7632,7 @@ msgstr ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
@@ -7572,7 +7640,7 @@ msgstr ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
@@ -7580,15 +7648,15 @@ msgstr ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr "System does not support compression"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr "If compression is set to True, rsize must also be set (not equal to -1)"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
@@ -7597,101 +7665,101 @@ msgstr ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr "leave: _create_vdisk: volume %s "
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7699,8 +7767,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7719,7 +7787,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7728,27 +7796,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7853,11 +7921,9 @@ msgstr "Mapped LUN %(name)s to the initiator %(initiator_name)s"
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
-"%(initiator_name)s"
 
 #: cinder/volume/drivers/netapp/iscsi.py:238
 #, python-format
@@ -8622,44 +8688,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr "CLIQ command returned %s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr "Volume info: %(volume_name)s => %(volume_attributes)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr "local_path not supported"
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr "Specify san_password or san_private_key"
@@ -8678,58 +8706,50 @@ msgstr "Cannot parse list-view output: %s"
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr "CPG (%s) doesn't exist on array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr "Error running ssh command: %s"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
@@ -8738,102 +8758,192 @@ msgstr ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "Volume (%s) already exists on array"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr "CLIQ command returned %s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr "Volume info: %(volume_name)s => %(volume_attributes)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr "local_path not supported"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9557,7 +9667,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9650,7 +9760,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9686,120 +9796,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10662,14 +10760,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "wait wrap.failed %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10697,20 +10787,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr "enter: _get_chap_secret_for_host: host name %s"
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10729,21 +10805,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s mapping to multi host"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr "enter: _delete_host: host %s "
 
@@ -10756,122 +10820,15 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr "_get_host_from_connector failed to return the host name for connector"
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
-#~ msgstr ""
-
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
-#~ msgstr ""
-
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
-#~ msgstr ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
-
 #~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 
 #~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr "enter: _create_vdisk: vdisk %s "
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-#~ msgstr ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
-#~ msgstr ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
-
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
-#~ msgstr ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
-
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-#~ msgstr ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
-#~ msgstr ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
-
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
-#~ msgstr ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
-
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
-#~ msgstr ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
-
 #~ msgid "_prepare_fc_map: %s"
 #~ msgstr "_prepare_fc_map: %s"
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-#~ msgstr ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
-#~ msgstr ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
-
 #~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 
@@ -10881,28 +10838,12 @@ msgstr ""
 #~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
-#~ msgstr ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
-
 #~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 
 #~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr "enter: _get_flashcopy_mapping_attributes: mapping %s"
 
-#~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
-#~ msgstr ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
-
 #~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr "enter: _is_vdisk_defined: vdisk %s "
 
@@ -10918,13 +10859,6 @@ msgstr ""
 #~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr "leave: _delete_vdisk: vdisk %s"
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
-#~ msgstr ""
-
 #~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
@@ -10934,104 +10868,250 @@ msgstr ""
 #~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr "enter: _execute_command_and_parse_attributes:  command %s"
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgstr "Did not find expected column in %(fun)s: %(hdr)s"
+
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "Marking volume %s as bootable"
 #~ msgstr ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
-#~ msgstr "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "Host %(host)s is not up or doesn't exist."
+#~ msgstr "Host %(host)s is not up or doesn't exist."
 
 #~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
+#~ msgstr ""
+
+#~ msgid "writing zeroes chunk %d"
+#~ msgstr ""
+
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+#~ msgstr ""
+
+#~ msgid "transferring remaining %s bytes"
+#~ msgstr ""
+
+#~ msgid "creating base image '%s'"
+#~ msgstr ""
+
+#~ msgid "deleting backup snapshot='%s'"
+#~ msgstr ""
+
+#~ msgid "no backup snapshot to delete"
+#~ msgstr ""
+
+#~ msgid "trying diff format name format basename='%s'"
+#~ msgstr ""
+
+#~ msgid "base image still has %s snapshots so skipping base image delete"
+#~ msgstr ""
+
+#~ msgid "deleting base image='%s'"
+#~ msgstr ""
+
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+#~ msgstr ""
+
+#~ msgid "max retries reached - raising error"
+#~ msgstr ""
+
+#~ msgid "base backup image='%s' deleted)"
+#~ msgstr ""
+
+#~ msgid "deleting source snap '%s'"
+#~ msgstr ""
+
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
 #~ msgstr ""
 
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
+#~ msgstr "no calling threads waiting for msg_id : %s, message : %s"
+
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr "Failed to sanitize %(item)s. Key error %(err)s"
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr "Matchmaker unregistered: %s, %s"
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
 #~ msgstr ""
 
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+
+#~ msgid "Error unrecognized volume_clear option: %s"
+#~ msgstr "Error unrecognized volume_clear option: %s"
+
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Error running ssh command: %s"
+
diff --git a/cinder/locale/es/LC_MESSAGES/cinder.po b/cinder/locale/es/LC_MESSAGES/cinder.po
index 7b4327601..dd4aa718b 100644
--- a/cinder/locale/es/LC_MESSAGES/cinder.po
+++ b/cinder/locale/es/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-03-10 06:08+0000\n"
 "Last-Translator: Oscar Rosario <oscar.inirio@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "Una excepcion desconocida ha ocurrido"
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "no hay método para el mensaje: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Parametros inaceptables"
 
@@ -130,7 +130,7 @@ msgstr "Tipo de contenido invalido %(content_type)s."
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,34 +342,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -662,6 +662,11 @@ msgstr "Una excepcion desconocida ha ocurrido"
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -697,11 +702,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -816,46 +821,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -871,11 +876,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -996,7 +1001,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1291,7 +1296,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1304,7 +1325,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Capturado error: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1352,47 +1373,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1404,15 +1425,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1482,37 +1503,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "el grupo de volumenes %s no existe"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Crear volumen de %s GB"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1523,17 +1544,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1541,20 +1562,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1767,282 +1788,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2368,50 +2389,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2527,57 +2548,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2600,17 +2621,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Reiniciando instancia %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2620,22 +2641,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2660,33 +2681,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2703,11 +2729,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2745,22 +2771,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "El estado del volumen debe estar disponible"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2985,11 +3011,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3132,7 +3163,6 @@ msgstr "Ejecutando cmd (subprocesos): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "El resultado fue %s"
@@ -3143,7 +3173,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "corriendo cmd (SSH): %s"
@@ -3311,7 +3340,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3319,211 +3348,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "contenido desempaquetado: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "recibido %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "no hay método para el mensaje: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "No hay método para el mensaje: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID es %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "Una excepcion desconocida ha ocurrido"
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "Reuso invalido de una coneccion RPC"
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3560,6 +3601,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3590,144 +3635,137 @@ msgstr "Des-registrando la imagen %s"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "recibido %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "La petición es inválida."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake no tiene una implementación para %s"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3887,12 +3925,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "Falso ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3938,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3947,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3960,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4046,7 +4084,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4077,175 +4115,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "El estado del volumen debe estar disponible"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "El estado del volumen debe estar disponible"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "El estado del volumen debe estar disponible"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4279,59 +4336,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Imposible encontrar SR en VBD %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4339,10 +4396,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4414,7 +4509,7 @@ msgstr "volumen %s: eliminando"
 msgid "volume is not local to this node"
 msgstr "Volumen no local a este nodo"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volumen %s: eliminando exportación"
@@ -4424,197 +4519,207 @@ msgstr "volumen %s: eliminando exportación"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volumen %s: eliminado satisfactoriamente"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4668,65 +4773,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Crear volumen de %s GB"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4826,7 +4902,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4910,207 +4985,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5181,56 +5271,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5250,42 +5320,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "el grupo %s ya existe"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5496,178 +5566,178 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "respuesta %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Fallo al generar metadatos para la ip %s"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Fallo al suspender la instancia"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7076,123 +7146,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7201,71 +7271,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7299,198 +7369,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7498,8 +7568,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7519,7 +7589,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7528,27 +7598,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7653,7 +7723,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8416,42 +8486,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8470,160 +8504,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Error inesperado mientras el comando se ejecutaba"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "el grupo %s ya existe"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9347,7 +9461,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9440,7 +9554,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9476,120 +9590,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10452,14 +10554,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "No encontrado: %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10487,16 +10581,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10515,19 +10599,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s: saltando exportación"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10540,230 +10614,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Error inesperado mientras el comando se ejecutaba"
+
diff --git a/cinder/locale/es_MX/LC_MESSAGES/cinder.po b/cinder/locale/es_MX/LC_MESSAGES/cinder.po
index bc890dbe1..fb4750215 100644
--- a/cinder/locale/es_MX/LC_MESSAGES/cinder.po
+++ b/cinder/locale/es_MX/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-08-30 09:12+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Spanish (Mexico) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10131,14 +10233,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10166,16 +10260,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10194,19 +10278,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10219,230 +10293,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/eu/LC_MESSAGES/cinder.po b/cinder/locale/eu/LC_MESSAGES/cinder.po
index 2a1d92af1..beb335496 100644
--- a/cinder/locale/eu/LC_MESSAGES/cinder.po
+++ b/cinder/locale/eu/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-06 03:20+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Basque "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9723,14 +9825,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9758,16 +9852,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9786,19 +9870,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9811,230 +9885,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/eu_ES/LC_MESSAGES/cinder.po b/cinder/locale/eu_ES/LC_MESSAGES/cinder.po
index dc94394d7..724f2817a 100644
--- a/cinder/locale/eu_ES/LC_MESSAGES/cinder.po
+++ b/cinder/locale/eu_ES/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Basque (Spain) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9684,14 +9786,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9719,16 +9813,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9747,19 +9831,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9772,230 +9846,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/fa/LC_MESSAGES/cinder.po b/cinder/locale/fa/LC_MESSAGES/cinder.po
index ae76fafd9..bb6337223 100644
--- a/cinder/locale/fa/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fa/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Persian "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9684,14 +9786,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9719,16 +9813,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9747,19 +9831,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9772,230 +9846,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/fi_FI/LC_MESSAGES/cinder.po b/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
index d0ae6fe0d..b68f199f0 100644
--- a/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fi_FI/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Finnish (Finland) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/fil/LC_MESSAGES/cinder.po b/cinder/locale/fil/LC_MESSAGES/cinder.po
index 189e72dd2..b49aca08d 100644
--- a/cinder/locale/fil/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fil/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-09-26 22:10+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Filipino "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10095,14 +10197,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10130,16 +10224,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10158,19 +10242,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10183,230 +10257,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/fr/LC_MESSAGES/cinder.po b/cinder/locale/fr/LC_MESSAGES/cinder.po
index 650b3a8f8..6cd715050 100644
--- a/cinder/locale/fr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/fr/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-04-06 14:54+0000\n"
 "Last-Translator: EmmanuelLeNormand <manu@ubuntu-fr.org>\n"
 "Language-Team: French <fr@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "Une exception inconnue s'est produite."
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "Pas de méthode pour le message : %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Paramètres inacceptables."
 
@@ -130,7 +130,7 @@ msgstr "Le type de contenu %(content_type)s est invalide"
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,34 +342,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -662,6 +662,11 @@ msgstr "Une exception inconnue s'est produite."
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -697,11 +702,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -816,46 +821,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Impossible de trouver SR du VDB %s"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Impossible de trouver SR du VDB %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Impossible de trouver SR du VDB %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "Vous devez implémenter __call__"
 
@@ -871,11 +876,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -996,7 +1001,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1291,7 +1296,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1304,7 +1325,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Erreur interceptée : %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1352,47 +1373,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1404,15 +1425,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1482,37 +1503,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "Le groupe de volume %s n'existe pas"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Création d'un volume de %s Go"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1523,17 +1544,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1541,20 +1562,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1767,282 +1788,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2368,50 +2389,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2527,57 +2548,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Tentative de suppression d'une console non existente %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2600,17 +2621,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Redémarrage de l'instance %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2620,22 +2641,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2660,33 +2681,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Impossible de trouver SR du VDB %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2703,11 +2729,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2745,22 +2771,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Le status du volume doit être disponible"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2985,11 +3011,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3132,7 +3163,6 @@ msgstr "Execution de la commande (sous-processus) : %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Le résultat était %s"
@@ -3143,7 +3173,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Execution de la cmd (SSH): %s"
@@ -3311,7 +3340,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3319,211 +3348,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "Contexte décompacté : %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "%s reçu"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "Pas de méthode pour le message : %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Pas de méthode pour le message : %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID est %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "Une exception inconnue s'est produite."
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "Réutilisation invalide d'une connexion RPC"
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Renvoi de l'exception %s à l'appelant"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3560,6 +3601,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3590,144 +3635,137 @@ msgstr "Dé-enregitrement de l'image %s"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "%s reçu"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "La requête est invalide."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake n'a pas d'implémentation pour %s"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3887,12 +3925,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAUX ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3938,7 +3976,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3947,12 +3985,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3960,7 +3998,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4046,7 +4084,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4077,175 +4115,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Le status du volume doit être disponible"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Le status du volume doit être disponible"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Le status du volume doit être disponible"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4279,59 +4336,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Imposible de trouver une exportation iSCSI pour le volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4339,10 +4396,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4414,7 +4509,7 @@ msgstr "volume %s: suppression"
 msgid "volume is not local to this node"
 msgstr "Le volume n'est pas local à ce noeud"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: suppression de l'exportation"
@@ -4424,199 +4519,209 @@ msgstr "volume %s: suppression de l'exportation"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: supprimé avec succès"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 "Montage du volume %(volume_id)s sur l'instance %(instance_id)s en tant "
 "que %(device)s"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4670,65 +4775,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Création d'un volume de %s Go"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4828,7 +4904,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4912,207 +4987,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "Nested renvoi %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5183,56 +5273,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5252,42 +5322,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "le groupe %s existe déjà"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5498,178 +5568,178 @@ msgstr "Sheepdog n'est pas actif : %s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog n'est pas actif"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "réponse %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Impossible de récupérer les méta-donnérs pour l'IP : %s"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Échec de la suspension de l'instance"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7082,123 +7152,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7207,71 +7277,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7305,198 +7375,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7504,8 +7574,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7525,7 +7595,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7534,27 +7604,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7659,7 +7729,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8422,42 +8492,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8476,160 +8510,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Erreur imprévue lors de l'éxecution de la commande"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "le groupe %s existe déjà"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9353,7 +9467,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9446,7 +9560,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9482,120 +9596,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10458,14 +10560,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "\"Non trouvé\" remonté : %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10493,16 +10587,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10521,19 +10605,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s : exportation évitée"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10546,230 +10620,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Erreur imprévue lors de l'éxecution de la commande"
+
diff --git a/cinder/locale/gl/LC_MESSAGES/cinder.po b/cinder/locale/gl/LC_MESSAGES/cinder.po
index b33b6504a..0f2badc2a 100644
--- a/cinder/locale/gl/LC_MESSAGES/cinder.po
+++ b/cinder/locale/gl/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-10-28 23:23+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Galician "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9732,14 +9834,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9767,16 +9861,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9795,19 +9879,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9820,230 +9894,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/he/LC_MESSAGES/cinder.po b/cinder/locale/he/LC_MESSAGES/cinder.po
index 4d1756c3f..6e903ee6e 100644
--- a/cinder/locale/he/LC_MESSAGES/cinder.po
+++ b/cinder/locale/he/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2014-01-24 11:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hebrew "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9586,11 +9688,6 @@ msgstr ""
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
 #~ msgstr ""
 
 #~ msgid "Failed to update iscsi target for volume %(name)s."
@@ -9620,16 +9717,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9648,19 +9735,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9673,230 +9750,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/he_IL/LC_MESSAGES/cinder.po b/cinder/locale/he_IL/LC_MESSAGES/cinder.po
index 18f44b6fa..4f205537e 100644
--- a/cinder/locale/he_IL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/he_IL/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2014-01-24 11:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hebrew (Israel) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9586,11 +9688,6 @@ msgstr ""
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
 #~ msgstr ""
 
 #~ msgid "Failed to update iscsi target for volume %(name)s."
@@ -9620,16 +9717,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9648,19 +9735,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9673,230 +9750,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/hi/LC_MESSAGES/cinder.po b/cinder/locale/hi/LC_MESSAGES/cinder.po
index 166357fae..67097a552 100644
--- a/cinder/locale/hi/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hi/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Hindi "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10164,14 +10266,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10199,16 +10293,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10227,19 +10311,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10252,230 +10326,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/hr/LC_MESSAGES/cinder.po b/cinder/locale/hr/LC_MESSAGES/cinder.po
index e026d6999..b4ea45c9e 100644
--- a/cinder/locale/hr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hr/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Croatian "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/hu/LC_MESSAGES/cinder.po b/cinder/locale/hu/LC_MESSAGES/cinder.po
index 8879ba59c..49f0e6d3f 100644
--- a/cinder/locale/hu/LC_MESSAGES/cinder.po
+++ b/cinder/locale/hu/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Hungarian "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/id/LC_MESSAGES/cinder.po b/cinder/locale/id/LC_MESSAGES/cinder.po
index fea84645d..f0f6af553 100644
--- a/cinder/locale/id/LC_MESSAGES/cinder.po
+++ b/cinder/locale/id/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Indonesian "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/is_IS/LC_MESSAGES/cinder.po b/cinder/locale/is_IS/LC_MESSAGES/cinder.po
index aef57c8e9..4604c2b8f 100644
--- a/cinder/locale/is_IS/LC_MESSAGES/cinder.po
+++ b/cinder/locale/is_IS/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-12-16 02:36+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Icelandic (Iceland) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9639,14 +9741,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9674,16 +9768,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9702,19 +9786,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9727,230 +9801,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/it/LC_MESSAGES/cinder.po b/cinder/locale/it/LC_MESSAGES/cinder.po
index 14056dc05..0a3e3fef5 100644
--- a/cinder/locale/it/LC_MESSAGES/cinder.po
+++ b/cinder/locale/it/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-04-01 18:59+0000\n"
 "Last-Translator: simone.sandri <lexluxsox@hotmail.it>\n"
 "Language-Team: Italian <it@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "E' stato riscontrato un errore sconosciuto"
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "nessun metodo per il messaggio: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Parametri inaccettabili."
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,34 +342,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -660,6 +660,11 @@ msgstr "E' stato riscontrato un errore sconosciuto"
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -695,11 +700,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -814,46 +819,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -869,11 +874,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -994,7 +999,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1289,7 +1294,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1302,7 +1323,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1350,47 +1371,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1402,15 +1423,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1479,37 +1500,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1520,17 +1541,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1538,20 +1559,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1764,282 +1785,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2365,50 +2386,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2524,57 +2545,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2597,17 +2618,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Riavviando l'istanza %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2617,22 +2638,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2657,33 +2678,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Impossibile smontare il volume %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2700,11 +2726,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2742,22 +2768,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Lo stato del volume deve essere disponibile"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2982,11 +3008,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3129,7 +3160,6 @@ msgstr "Esecuzione del comando (sottoprocesso): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Il risultato é %s"
@@ -3140,7 +3170,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Eseguendo cmd (SSH): %s"
@@ -3308,7 +3337,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3316,211 +3345,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "contesto decompresso: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "ricevuto %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "nessun metodo per il messaggio: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "nessun metodo per il messagggio: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID é %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "E' stato riscontrato un errore sconosciuto"
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Sollevando eccezione %s al chiamante"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3557,6 +3598,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3586,143 +3631,136 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "ricevuto %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "La richiesta non è valida."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3881,12 +3919,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3932,7 +3970,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3941,12 +3979,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3954,7 +3992,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4040,7 +4078,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4071,175 +4109,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Lo stato del volume deve essere disponibile"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Lo stato del volume deve essere disponibile"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Lo stato del volume deve essere disponibile"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4273,59 +4330,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Impossibile localizzare il volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4333,10 +4390,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4408,7 +4503,7 @@ msgstr "volume %s: rimuovendo"
 msgid "volume is not local to this node"
 msgstr "Volume ancora collegato"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4418,197 +4513,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: rimosso con successo"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4662,65 +4767,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4820,7 +4896,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4904,207 +4979,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5175,56 +5265,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5244,42 +5314,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5489,177 +5559,177 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "risposta %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Impossibile sospendere l'istanza"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7068,123 +7138,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7193,71 +7263,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7291,198 +7361,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7490,8 +7560,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7511,7 +7581,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7520,27 +7590,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7645,7 +7715,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8408,42 +8478,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8462,160 +8496,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Si e' verificato un errore inatteso durante l'esecuzione del comando."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9339,7 +9453,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9432,7 +9546,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9468,120 +9582,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10444,14 +10546,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10479,16 +10573,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10507,19 +10591,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10532,230 +10606,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Si e' verificato un errore inatteso durante l'esecuzione del comando."
+
diff --git a/cinder/locale/it_IT/LC_MESSAGES/cinder.po b/cinder/locale/it_IT/LC_MESSAGES/cinder.po
index 7683b81c9..f7d7ddc84 100644
--- a/cinder/locale/it_IT/LC_MESSAGES/cinder.po
+++ b/cinder/locale/it_IT/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Italian (Italy) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ja/LC_MESSAGES/cinder.po b/cinder/locale/ja/LC_MESSAGES/cinder.po
index cc930823d..9acf5cf6b 100644
--- a/cinder/locale/ja/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ja/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-08-23 11:22+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: \n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "メッセージ %s に対するメソッドが存在しません。"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "VBD %s から SRを取得できません。"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "VBD %s から SRを取得できません。"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "VBD %s から SRを取得できません。"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "__call__ を実装しなければなりません"
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "エラー %s をキャッチしました。"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1477,37 +1498,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "ボリュームグループ%sが存在しません。"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Create volume: %s GBのボリュームを作成します。"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1518,17 +1539,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1536,20 +1557,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1762,282 +1783,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2363,50 +2384,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2522,57 +2543,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "存在しないコンソール %(console_id)s を削除しようとしました"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2595,17 +2616,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Rebooting instance: インスタンス %s を再起動します。"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2615,22 +2636,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2655,33 +2676,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "VBD %s から SRを取得できません。"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2698,11 +2724,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2740,22 +2766,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "ボリュームのステータス(status)は available でなければなりません。"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2980,11 +3006,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3127,7 +3158,6 @@ msgstr "コマンド実行(subprocess): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "コマンド実行結果: %s"
@@ -3138,7 +3168,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "コマンド(SSH)を実行: %s"
@@ -3306,7 +3335,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3314,210 +3343,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "context  %s をアンパックしました。"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "受信: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "メッセージ %s に対するメソッドが存在しません。"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "メッセージ %s に対するメソッドが存在しません。"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_IDは %s です。"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "呼び出し元に 例外 %s を返却します。"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3554,6 +3595,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3584,143 +3629,136 @@ msgstr "De-registering image: イメージ %s を登録解除します。"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "受信: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake には %s が実装されていません。"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3880,12 +3918,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "偽のISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3931,7 +3969,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3940,12 +3978,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3953,7 +3991,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4038,7 +4076,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4069,175 +4107,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "ボリュームのステータス(status)は available でなければなりません。"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "ボリュームのステータス(status)は available でなければなりません。"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "ボリュームのステータス(status)は available でなければなりません。"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4271,59 +4328,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "ボリューム %s 用の iSCSI エクスポートが見つかりません"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4331,10 +4388,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4406,7 +4501,7 @@ msgstr "ボリューム %s を削除します。"
 msgid "volume is not local to this node"
 msgstr "ボリュームはこのノードのローカルではありません。"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "ボリューム %s のエクスポートを解除します。"
@@ -4416,197 +4511,207 @@ msgstr "ボリューム %s のエクスポートを解除します。"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "ボリューム %s の削除に成功しました。"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "ボリューム %(volume_id)s をインスタンス %(instance_id)s のデバイス %(device)s に接続"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4660,65 +4765,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Create volume: %s GBのボリュームを作成します。"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4818,7 +4894,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4902,207 +4977,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "ネストした戻り値: %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5173,56 +5263,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5242,42 +5312,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "グループ %s は既に存在しています。"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5488,178 +5558,178 @@ msgstr "Sheepdog が動作していません: %s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog が機能していません"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "応答 %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "ip %s に対するメタデータの取得に失敗しました。"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "インスタンス終了処理を開始します。"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7068,123 +7138,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7193,71 +7263,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7291,198 +7361,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7490,8 +7560,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7511,7 +7581,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7520,27 +7590,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7645,7 +7715,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8408,42 +8478,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8462,160 +8496,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "コマンド実行において予期しないエラーが発生しました。"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "グループ %s は既に存在しています。"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9339,7 +9453,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9432,7 +9546,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9468,120 +9582,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10444,14 +10546,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "NotFound 発生: %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10479,16 +10573,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10507,19 +10591,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "ボリューム %s のエキスポートをスキップします。"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10532,230 +10606,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "コマンド実行において予期しないエラーが発生しました。"
+
diff --git a/cinder/locale/ka_GE/LC_MESSAGES/cinder.po b/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
index 1e02f5270..2c174b302 100644
--- a/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ka_GE/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Georgian (Georgia) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/km/LC_MESSAGES/cinder.po b/cinder/locale/km/LC_MESSAGES/cinder.po
index 9b9a92207..2bd47765c 100644
--- a/cinder/locale/km/LC_MESSAGES/cinder.po
+++ b/cinder/locale/km/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Khmer "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9684,14 +9786,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9719,16 +9813,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9747,19 +9831,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9772,230 +9846,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/kn/LC_MESSAGES/cinder.po b/cinder/locale/kn/LC_MESSAGES/cinder.po
index ff41008fd..69d48df53 100644
--- a/cinder/locale/kn/LC_MESSAGES/cinder.po
+++ b/cinder/locale/kn/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-09-17 14:44+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Kannada "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10095,14 +10197,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10130,16 +10224,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10158,19 +10242,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10183,230 +10257,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ko/LC_MESSAGES/cinder.po b/cinder/locale/ko/LC_MESSAGES/cinder.po
index f5f54da64..2c41322b8 100644
--- a/cinder/locale/ko/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ko/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-12-16 04:42+0000\n"
 "Last-Translator: Zhongyue Luo <lzyeval@gmail.com>\n"
 "Language-Team: Korean <ko@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1760,282 +1781,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2361,50 +2382,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2520,57 +2541,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2593,17 +2614,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "인스턴스 %s를 재부팅합니다"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2613,22 +2634,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2653,33 +2674,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "%s 볼륨 탈착에 실패했습니다"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2696,11 +2722,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2738,22 +2764,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2978,11 +3004,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3125,7 +3156,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3136,7 +3166,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3303,7 +3332,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3311,210 +3340,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3551,6 +3592,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3580,142 +3625,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3874,12 +3912,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3925,7 +3963,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3934,12 +3972,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3947,7 +3985,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4032,7 +4070,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4063,175 +4101,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "볼륨의 상태를 알 수 없습니다"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4265,59 +4322,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "%s 볼륨을 찾을수 없습니다"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4325,10 +4382,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4399,7 +4494,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4409,197 +4504,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4653,65 +4758,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4811,7 +4887,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4895,207 +4970,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5166,56 +5256,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5235,42 +5305,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5480,176 +5550,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7057,123 +7127,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7182,71 +7252,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7280,198 +7350,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7479,8 +7549,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7500,7 +7570,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7509,27 +7579,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7634,7 +7704,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8397,42 +8467,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8451,160 +8485,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "명령 실행도중 예측하지 못한 에러가 발생했습니다"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9328,7 +9442,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9421,7 +9535,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9457,120 +9571,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10433,14 +10535,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10468,16 +10562,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10496,19 +10580,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10521,230 +10595,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "명령 실행도중 예측하지 못한 에러가 발생했습니다"
+
diff --git a/cinder/locale/ko_KR/LC_MESSAGES/cinder.po b/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
index 5bea4e9fd..29609e256 100644
--- a/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ko_KR/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Korean (Korea) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ml_IN/LC_MESSAGES/cinder.po b/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
index c388d181b..acd832cda 100644
--- a/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ml_IN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malayalam (India) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9684,14 +9786,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9719,16 +9813,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9747,19 +9831,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9772,230 +9846,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/mr_IN/LC_MESSAGES/cinder.po b/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
index b6b362fb3..cb34a98be 100644
--- a/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/mr_IN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-10-16 22:17+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Marathi (India) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9768,14 +9870,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9803,16 +9897,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9831,19 +9915,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9856,230 +9930,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ms/LC_MESSAGES/cinder.po b/cinder/locale/ms/LC_MESSAGES/cinder.po
index 4f29c4c21..c868a1ba7 100644
--- a/cinder/locale/ms/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ms/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malay "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/nb/LC_MESSAGES/cinder.po b/cinder/locale/nb/LC_MESSAGES/cinder.po
index 5622a6d6d..924273cf8 100644
--- a/cinder/locale/nb/LC_MESSAGES/cinder.po
+++ b/cinder/locale/nb/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Norwegian Bokmål "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ne/LC_MESSAGES/cinder.po b/cinder/locale/ne/LC_MESSAGES/cinder.po
index c8e060417..dfa304545 100644
--- a/cinder/locale/ne/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ne/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-08-30 22:38+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Nepali "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10131,14 +10233,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10166,16 +10260,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10194,19 +10278,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10219,230 +10293,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/nl_NL/LC_MESSAGES/cinder.po b/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
index 249cc3750..127e95ceb 100644
--- a/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/nl_NL/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Dutch (Netherlands) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/pa_IN/LC_MESSAGES/cinder.po b/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
index 0cd17c287..6a166c433 100644
--- a/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pa_IN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-12-15 11:10+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Panjabi (Punjabi) (India) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9639,14 +9741,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9674,16 +9768,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9702,19 +9786,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9727,230 +9801,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/pl_PL/LC_MESSAGES/cinder.po b/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
index 963b3a7d7..09dcf650b 100644
--- a/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pl_PL/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-07-01 16:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Polish (Poland) "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/pt/LC_MESSAGES/cinder.po b/cinder/locale/pt/LC_MESSAGES/cinder.po
index 4269494dd..9616a7496 100644
--- a/cinder/locale/pt/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pt/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Portuguese "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/pt_BR/LC_MESSAGES/cinder.po b/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
index 2deadcfd1..90295f36e 100644
--- a/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/pt_BR/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-02-06 21:07+0000\n"
 "Last-Translator: Adriano Steffler <Unknown>\n"
 "Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "sem método para mensagem: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Não é possível localizar o volume %s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -813,46 +818,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Impossível localizar uma porta aberta"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Impossível localizar uma porta aberta"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Não é possível destruir o VBD %s"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -868,11 +873,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -993,7 +998,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1288,7 +1293,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1301,7 +1322,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Capturado o erro: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1349,47 +1370,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1401,15 +1422,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1478,37 +1499,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Criar volume de %s GB"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1519,17 +1540,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1537,20 +1558,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1763,282 +1784,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2364,50 +2385,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2523,57 +2544,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2596,17 +2617,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Reiniciando a instância %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2616,22 +2637,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2656,33 +2677,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Não é possível desconectar o volume %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2699,11 +2725,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2741,22 +2767,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "O status do volume parece estar disponível"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2981,11 +3007,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3128,7 +3159,6 @@ msgstr "Executando comando (subprocesso): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Resultado foi %s"
@@ -3139,7 +3169,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Executando o comando (SSH): %s"
@@ -3307,7 +3336,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3315,210 +3344,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "conteúdo descompactado: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "recebido %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "sem método para mensagem: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Sem método para mensagem: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID é %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Retornando exceção %s ao método de origem"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3555,6 +3596,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3585,143 +3630,136 @@ msgstr "Removendo o registro da imagem %s"
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "recebido %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake não tem uma implementação para %s"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3880,12 +3918,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3931,7 +3969,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3940,12 +3978,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3953,7 +3991,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4038,7 +4076,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4069,175 +4107,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "O status do volume parece estar disponível"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "O status do volume parece estar disponível"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "O status do volume parece estar disponível"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4271,59 +4328,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Não é possível localizar o volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4331,10 +4388,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4406,7 +4501,7 @@ msgstr "volume %s: removendo"
 msgid "volume is not local to this node"
 msgstr "O volume não pertence à este node"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "volume %s: removendo export"
@@ -4416,197 +4511,207 @@ msgstr "volume %s: removendo export"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "volume %s: remoção realizada com sucesso"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4660,65 +4765,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Criar volume de %s GB"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4818,7 +4894,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4902,207 +4977,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5173,56 +5263,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5242,42 +5312,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "group %s já existe"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5487,178 +5557,178 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "resposta %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Falha ao obter metadados para o ip: %s"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Começando a terminar instâncias"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7067,123 +7137,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7192,71 +7262,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7290,198 +7360,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7489,8 +7559,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7510,7 +7580,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7519,27 +7589,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7644,7 +7714,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8407,42 +8477,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8461,160 +8495,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Erro inesperado ao executar o comando."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "group %s já existe"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9338,7 +9452,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9431,7 +9545,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9467,120 +9581,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10443,14 +10545,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "NotFound lançado: %s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10478,16 +10572,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10506,19 +10590,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "volume %s: ignorando export"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10531,230 +10605,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Erro inesperado ao executar o comando."
+
diff --git a/cinder/locale/ro/LC_MESSAGES/cinder.po b/cinder/locale/ro/LC_MESSAGES/cinder.po
index d44a07c5a..0d01ad0b3 100644
--- a/cinder/locale/ro/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ro/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-06-12 07:55+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Romanian "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/ru/LC_MESSAGES/cinder.po b/cinder/locale/ru/LC_MESSAGES/cinder.po
index 98cd0cf6d..a2823358f 100644
--- a/cinder/locale/ru/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ru/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-03-25 09:34+0000\n"
 "Last-Translator: Eugene Marshal <Unknown>\n"
 "Language-Team: Russian <ru@li.org>\n"
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "Обнаружено неизвестное исключение."
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr "Ядро не найдено для образа %(image_id)s."
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "Недопустимые параметры."
 
@@ -131,7 +131,7 @@ msgstr "Недопустимый тип содержимого %(content_type)s.
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr "Ресурс не может быть найден."
 
@@ -345,34 +345,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
+msgid "Volume type encryption for type %(type_id)s does not exist."
+msgstr ""
+
+#: cinder/exception.py:377
+#, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "Неправильное тело сообщения: %(reason)s"
 
-#: cinder/exception.py:377
+#: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "Невозможно найти конфигурацию по адресу %(path)s"
 
-#: cinder/exception.py:381
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "Невозможно найти конфигурацию по адресу %(path)s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "Допустимый узел не найден. %(reason)s"
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr "Узел %(host)s не работает или не существует."
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -665,6 +665,11 @@ msgstr "Обнаружено неизвестное исключение."
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -700,11 +705,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -820,46 +825,46 @@ msgstr "Ошибка удаления контейнера: %s"
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "Невозможно найти адрес %r"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "Невозможно найти адрес %r"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "Невозможно найти адрес %r"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr "Выполняется останов сервера WSGI."
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr "Сервер WSGI был остановлен."
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -875,11 +880,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -1000,7 +1005,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1298,7 +1303,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1311,7 +1332,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "Обнаружена ошибка: %s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s возвратил с HTTP %(status)d"
@@ -1361,47 +1382,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, fuzzy, python-format
 msgid "Exception handling resource: %s"
 msgstr "Расширенный ресурс: %s"
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr "Пустое тело предоставлено в запросе"
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr "В запросе предоставлен не распознанный тип-содержимого"
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr "Тип содержимого не предоставлен в запросе"
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1413,15 +1434,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr "Неправильное тело запроса"
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr "Не поддерживаемый  тип содержимого"
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr "Неправильный запрос url"
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr "%(url)s возвратил ошибку: %(e)s"
@@ -1493,37 +1514,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "Сервер не существует"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr "vol=%s"
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr "Удалить том с идентификатором: %s"
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Создание раздела %s ГБ"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
@@ -1534,17 +1555,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1552,20 +1573,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "Удаление параметров '%(unk_opt_str)s' из запроса"
@@ -1778,282 +1799,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2379,50 +2400,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2538,57 +2559,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "Выполнена попытка удаления несуществующей консоли %(console_id)s."
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2611,17 +2632,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "Перезагрузка копии %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2631,22 +2652,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2671,33 +2692,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "Ошибка поиска vbd для vdi %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2714,11 +2740,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2756,22 +2782,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Состояние тома должно быть доступно"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2996,11 +3022,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, fuzzy, python-format
 msgid "Original exception being dropped: %s"
 msgstr "Исходное исключение было сброшено"
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3143,7 +3174,6 @@ msgstr "Выполнение команды (субпроцесс): %s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "Результат %s"
@@ -3154,7 +3184,6 @@ msgid "%r failed. Retrying."
 msgstr "%r ошибка. Выполняется повтор."
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "Выполнение команды (SSH): %s"
@@ -3324,7 +3353,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3332,88 +3361,93 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "неизвлечённый контекст: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "получено %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "не определен метод для сообщения: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Не определен метод для сообщения: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, fuzzy, python-format
 msgid "Making synchronous call on %s ..."
 msgstr "Выполнение асинхронного вызова %s ..."
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID is %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "Обнаружено неизвестное исключение."
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
@@ -3422,66 +3456,69 @@ msgstr ""
 "Удалённая ошибка: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "Возврат исключения %s вызывающему"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr "Повторное подключение к серверу AMQP на %(hostname)s:%(port)d"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr "Подключение к серверу AMQP на %(hostname)s:%(port)d"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
@@ -3490,7 +3527,7 @@ msgstr ""
 "Невозможно подключиться к серверу AMQP на %(hostname)s:%(port)d после "
 "%(max_retries)d попыток: %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
@@ -3499,50 +3536,54 @@ msgstr ""
 "AMQP сервер на %(hostname)s:%(port)d недоступен: %(err_str)s. Повторная "
 "попытка через %(sleep_time)d секунд."
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr "Ошибка объявления потребителю темы '%(topic)s': %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr "Ошибка принятия сообщения из очереди: %s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr "Ошибка публикации сообщения в тему '%(topic)s': %(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, fuzzy, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr "Невозможно подключиться к серверу AMQP: %s "
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3579,6 +3620,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3610,145 +3655,138 @@ msgstr "Исключение регистрации ВМ %s"
 msgid "In reactor registered"
 msgstr "Отсутствуют зарегистрированные ВМ"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, fuzzy, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr "Заданные данные: %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 #, fuzzy
 msgid "Creating payload"
 msgstr "Создание изображения"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "получено %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "Недопустимый запрос."
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake не имеет реализации для %s"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3907,12 +3945,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3958,7 +3996,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3967,12 +4005,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr "Нераспознанное значение read_deleted '%s'"
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, fuzzy, python-format
 msgid ""
 "CLI output:\n"
@@ -3980,7 +4018,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr "Ответ на имитацию команды в stdout='%(stdout)s' stderr='%(stderr)s'"
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4070,7 +4108,7 @@ msgstr "Декодирование JSON: %s"
 msgid "Volume in unexpected state"
 msgstr "Непредвиденный код состояния"
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4101,176 +4139,195 @@ msgstr "Ошибка обновления агента: %(resp)r"
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr "Поиск по: %s"
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Состояние тома должно быть доступно"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, fuzzy, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr "Превышена квота для %(pid)s, попытка создания тома %(size)sG"
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, fuzzy, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr "Превышена квота для %(pid)s, попытка выполнить %(min_count)s копий"
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Состояние тома должно быть доступно"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Состояние тома должно быть доступно"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 #, fuzzy
 msgid "Volume status is in-use."
 msgstr "том %s: том занят"
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4304,59 +4361,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "Невозможно найти экспортирование iSCSI для тома %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4364,10 +4421,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, fuzzy, python-format
+msgid "Symbolic link %s not found"
+msgstr "маркер [%s] не найден"
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4439,7 +4534,7 @@ msgstr "том %s: удаление"
 msgid "volume is not local to this node"
 msgstr "Том до сих пор присоединён"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "том %s: удаление экспортирования"
@@ -4449,199 +4544,209 @@ msgstr "том %s: удаление экспортирования"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 #, fuzzy
 msgid "Failed to update usages deleting volume"
 msgstr "Ошибка обновления агента: %(resp)r"
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "том %s: удаление завершено"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "снимок %s: создание"
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "снимок %s: создание завершено"
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "снимок %s: удаление"
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "снимок %s: удаление выполнено"
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "Подключить том %(volume_id)s для копии %(instance_id)s на %(device)s"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 #, fuzzy
 msgid "Updating volume status"
 msgstr "Обновление состояния узла"
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr "Принято уведомление {%s}"
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4695,65 +4800,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Создать снимок тома %s"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4853,7 +4929,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4937,207 +5012,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "_создать: %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, fuzzy, python-format
 msgid "Exception during mounting %s"
 msgstr "Расширенный ресурс: %s"
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5208,56 +5298,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, fuzzy, python-format
-msgid "Symbolic link %s not found"
-msgstr "маркер [%s] не найден"
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5277,42 +5347,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "образ уже присоединён"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5523,179 +5593,179 @@ msgstr "Sheepdog не выполняется: %s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog не выполняется"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "ответ %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "Ошибка получения метаданных для ip: %s"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 #, fuzzy
 msgid "Updating cluster status info"
 msgstr "Обновление состояния узла"
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "Невозможно получить обновлённое состояние: %s"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7109,123 +7179,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7234,71 +7304,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7332,198 +7402,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7531,8 +7601,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7552,7 +7622,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7561,27 +7631,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7686,7 +7756,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8449,46 +8519,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr "Возврат команды CLIQ %s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-"Неправильный ответ на команду CLIQ %(verb)s %(cliq_args)s. "
-"Результат=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr "Ошибка выполнения команды CLIQ %(verb)s %(cliq_args)s.  Результат=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-"Непредвиденное количество виртуальных ip для кластера  %(cluster_name)s. "
-"Результат=%(_xml)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr "Сведения о томе: %(volume_name)s => %(volume_attributes)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr "local_path не поддерживается"
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr "Задайте san_password или san_private_key"
@@ -8507,160 +8537,244 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr "LUID не найден для %(zfs_poolname)s. Вывод=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Ошибка в соглашении: %s"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "группа %s уже существует"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr "Возврат команды CLIQ %s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+"Неправильный ответ на команду CLIQ %(verb)s %(cliq_args)s. "
+"Результат=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr "Ошибка выполнения команды CLIQ %(verb)s %(cliq_args)s.  Результат=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+"Непредвиденное количество виртуальных ip для кластера  %(cluster_name)s. "
+"Результат=%(_xml)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr "Сведения о томе: %(volume_name)s => %(volume_attributes)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr "local_path не поддерживается"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9384,7 +9498,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9477,7 +9591,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9513,120 +9627,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10489,14 +10591,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10524,16 +10618,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10552,19 +10636,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr "удаление тома %(volume_name)s, который имеет снимок"
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "том %s: пропуск экспортирования"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10577,230 +10651,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
+#~ msgstr "_создать: %s"
+
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
-#~ msgstr "_создать: %s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgstr ""
+
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgstr ""
+
+#~ msgid "Marking volume %s as bootable"
 #~ msgstr ""
 
+#~ msgid "Host %(host)s is not up or doesn't exist."
+#~ msgstr "Узел %(host)s не работает или не существует."
+
 #~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "image '%s' not found - trying diff format name"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Ошибка в соглашении: %s"
+
diff --git a/cinder/locale/ru_RU/LC_MESSAGES/cinder.po b/cinder/locale/ru_RU/LC_MESSAGES/cinder.po
index 1ad9e9a0f..892e3b9bf 100644
--- a/cinder/locale/ru_RU/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ru_RU/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Russian (Russia) "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/sk/LC_MESSAGES/cinder.po b/cinder/locale/sk/LC_MESSAGES/cinder.po
index 0eac4886a..0f4251719 100644
--- a/cinder/locale/sk/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sk/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovak "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10164,14 +10266,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10199,16 +10293,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10227,19 +10311,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10252,230 +10326,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/sl_SI/LC_MESSAGES/cinder.po b/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
index 430fb9f2e..8422f9637 100644
--- a/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sl_SI/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-07-01 16:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Slovenian (Slovenia) "
@@ -29,11 +29,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -79,7 +79,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -131,7 +131,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -165,7 +165,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -343,32 +343,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -659,6 +659,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1757,282 +1778,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2358,50 +2379,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2517,57 +2538,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2590,17 +2611,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2610,22 +2631,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2650,33 +2671,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2693,11 +2719,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2735,21 +2761,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2974,11 +3000,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3121,7 +3152,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3132,7 +3162,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3299,7 +3328,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3307,210 +3336,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3547,6 +3588,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3576,142 +3621,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3870,12 +3908,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3921,7 +3959,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3930,12 +3968,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3943,7 +3981,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4028,7 +4066,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4059,172 +4097,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4258,59 +4315,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4318,10 +4375,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4392,7 +4487,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4402,197 +4497,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4646,65 +4751,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4804,7 +4880,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4888,207 +4963,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5159,56 +5249,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5228,42 +5298,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5472,176 +5542,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/sv/LC_MESSAGES/cinder.po b/cinder/locale/sv/LC_MESSAGES/cinder.po
index 76677a9b8..1c292c3b2 100644
--- a/cinder/locale/sv/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sv/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-11-26 20:45+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Swedish "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9684,14 +9786,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9719,16 +9813,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9747,19 +9831,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9772,230 +9846,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/sw_KE/LC_MESSAGES/cinder.po b/cinder/locale/sw_KE/LC_MESSAGES/cinder.po
index f341f3a97..d113dc201 100644
--- a/cinder/locale/sw_KE/LC_MESSAGES/cinder.po
+++ b/cinder/locale/sw_KE/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Swahili (Kenya) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/tl/LC_MESSAGES/cinder.po b/cinder/locale/tl/LC_MESSAGES/cinder.po
index 5053a7e7b..59a93a2a3 100644
--- a/cinder/locale/tl/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tl/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-08-23 11:21+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: Tagalog <tl@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "walang paraan para sa mensahe: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,32 +341,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1474,37 +1495,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1515,17 +1536,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1533,20 +1554,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1755,282 +1776,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2356,50 +2377,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2515,57 +2536,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2588,17 +2609,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2608,22 +2629,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2648,33 +2669,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2691,11 +2717,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2733,21 +2759,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2972,11 +2998,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3119,7 +3150,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3130,7 +3160,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3297,7 +3326,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3305,210 +3334,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "natanggap %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "walang paraan para sa mensahe: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Walang paraan para sa mensahe: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3545,6 +3586,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3574,142 +3619,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "natanggap %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3868,12 +3906,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3919,7 +3957,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3928,12 +3966,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3941,7 +3979,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4026,7 +4064,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4057,172 +4095,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4256,59 +4313,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4316,10 +4373,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4390,7 +4485,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4400,197 +4495,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4644,65 +4749,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4802,7 +4878,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4886,207 +4961,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5157,56 +5247,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5226,42 +5296,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5470,176 +5540,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Merong hindi-inaasahang pagkakamali habang tumatakbo ang command."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Merong hindi-inaasahang pagkakamali habang tumatakbo ang command."
+
diff --git a/cinder/locale/tl_PH/LC_MESSAGES/cinder.po b/cinder/locale/tl_PH/LC_MESSAGES/cinder.po
index a926433c0..0e9773def 100644
--- a/cinder/locale/tl_PH/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tl_PH/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-09-26 22:10+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Tagalog (Philippines) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10095,14 +10197,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10130,16 +10224,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10158,19 +10242,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10183,230 +10257,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/tr/LC_MESSAGES/cinder.po b/cinder/locale/tr/LC_MESSAGES/cinder.po
index 643f0891e..3d2bcc6c3 100644
--- a/cinder/locale/tr/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tr/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-12-14 18:10+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Turkish <tr@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,32 +341,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -657,6 +657,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -692,11 +697,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -810,46 +815,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -865,11 +870,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -990,7 +995,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1285,7 +1290,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1298,7 +1319,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1346,47 +1367,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1398,15 +1419,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1474,37 +1495,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1515,17 +1536,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1533,20 +1554,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1755,282 +1776,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2356,50 +2377,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2515,57 +2536,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2588,17 +2609,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2608,22 +2629,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2648,33 +2669,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2691,11 +2717,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2733,21 +2759,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2972,11 +2998,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3119,7 +3150,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3130,7 +3160,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3297,7 +3326,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3305,210 +3334,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3545,6 +3586,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3574,142 +3619,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3868,12 +3906,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3919,7 +3957,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3928,12 +3966,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3941,7 +3979,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4026,7 +4064,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4057,172 +4095,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4256,59 +4313,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4316,10 +4373,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4390,7 +4485,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4400,197 +4495,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4644,65 +4749,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4802,7 +4878,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4886,207 +4961,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5157,56 +5247,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5226,42 +5296,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5470,176 +5540,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7047,123 +7117,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7172,71 +7242,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7270,198 +7340,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7469,8 +7539,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7485,7 +7555,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7494,27 +7564,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7619,7 +7689,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8382,42 +8452,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8436,160 +8470,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9313,7 +9427,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9406,7 +9520,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9442,120 +9556,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10418,14 +10520,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10453,16 +10547,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10481,19 +10565,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10506,230 +10580,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/tr_TR/LC_MESSAGES/cinder.po b/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
index a6cb0a7a1..c5b83dd6f 100644
--- a/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
+++ b/cinder/locale/tr_TR/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Turkish (Turkey) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/uk/LC_MESSAGES/cinder.po b/cinder/locale/uk/LC_MESSAGES/cinder.po
index 73f214758..329f33fd0 100644
--- a/cinder/locale/uk/LC_MESSAGES/cinder.po
+++ b/cinder/locale/uk/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2011-08-23 11:21+0000\n"
 "Last-Translator: Thierry Carrez <thierry.carrez+lp@gmail.com>\n"
 "Language-Team: Ukrainian <uk@li.org>\n"
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr "без порядку для повідомлень: %s"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "Створити розділ на %s ГБ"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "отримано %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "без порядку для повідомлень: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "Без порядку для повідомлень: %s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "MSG_ID %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "отримано %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "Створити розділ на %s ГБ"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "відповідь %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7049,123 +7119,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7174,71 +7244,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7272,198 +7342,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7471,8 +7541,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7487,7 +7557,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7496,27 +7566,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7621,7 +7691,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8384,42 +8454,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8438,160 +8472,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "Неочікувана помилка при виконанні команди."
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9315,7 +9429,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9408,7 +9522,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9444,120 +9558,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10420,14 +10522,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10455,16 +10549,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10483,19 +10567,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10508,230 +10582,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "Неочікувана помилка при виконанні команди."
+
diff --git a/cinder/locale/ur/LC_MESSAGES/cinder.po b/cinder/locale/ur/LC_MESSAGES/cinder.po
index e1bc82a6b..fe9bf963b 100644
--- a/cinder/locale/ur/LC_MESSAGES/cinder.po
+++ b/cinder/locale/ur/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-10-07 06:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Urdu "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -9789,14 +9891,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -9824,16 +9918,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -9852,19 +9936,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -9877,230 +9951,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/vi_VN/LC_MESSAGES/cinder.po b/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
index 6229b4f68..1ea4f36b8 100644
--- a/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/vi_VN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-08 11:44+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Vietnamese (Viet Nam) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/zh_CN/LC_MESSAGES/cinder.po b/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
index 84c4dec2c..5dd73bdb7 100644
--- a/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_CN/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-04-03 23:36+0000\n"
 "Last-Translator: cheesecake <Unknown>\n"
 "Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "发生未知异常。"
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr "没有为镜像 %(image_id)s 找到内核。"
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "无法接受的参数。"
 
@@ -130,7 +130,7 @@ msgstr "无效的内容类型 %(content_type)s。"
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr "%(err)s"
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr "资源没有找到。"
 
@@ -342,34 +342,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
+msgid "Volume type encryption for type %(type_id)s does not exist."
+msgstr ""
+
+#: cinder/exception.py:377
+#, python-format
 msgid "Malformed message body: %(reason)s"
 msgstr "错误格式的消息体: %(reason)s"
 
-#: cinder/exception.py:377
+#: cinder/exception.py:381
 #, python-format
 msgid "Could not find config at %(path)s"
 msgstr "在 %(path)s 找不到配置文件。"
 
-#: cinder/exception.py:381
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "在 %(path)s 找不到配置文件。"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr "无法从路径 %(path)s 中加载应用 '%(name)s'"
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr "找不到有效主机,原因是 %(reason)s。"
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr "主机 %(host)s 没有启动或者不存在。"
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -660,6 +660,11 @@ msgstr "发生未知异常。"
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr "向调度器通报能力。"
@@ -695,11 +700,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -815,46 +820,46 @@ msgstr "移除容器失败:%s"
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, fuzzy, python-format
 msgid "Unable to find cert_file : %s"
 msgstr "无法找到地址 %r"
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "无法找到地址 %r"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, fuzzy, python-format
 msgid "Unable to find key_file : %s"
 msgstr "无法找到地址 %r"
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr "关闭WSGI服务器"
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr "WSGI服务器已经停止。"
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr "你必须执行 __call__"
 
@@ -870,11 +875,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr "limit 参数必须是整数"
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr "limit参数必须是正数"
 
@@ -995,7 +1000,7 @@ msgstr "模板数不匹配;把slave %(slavetag)s 添加到master %(mastertag)s
 msgid "subclasses must implement construct()!"
 msgstr "subclasses必须执行construct()!"
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1293,7 +1298,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1306,7 +1327,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr "抓到错误:%s"
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s 随HTTP %(status)d返回"
@@ -1354,47 +1375,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr "无法理解JSON"
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr "过多主体密钥"
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, fuzzy, python-format
 msgid "Exception handling resource: %s"
 msgstr "扩展资源:%s"
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr "错误抛出: %s"
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr "HTTP 异常抛出:%s"
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr "请求中没有提供主体"
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr "请求中提供了无法识别的 Content-Type"
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr "请求中没有提供 Content-Type"
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr "没有该动作:%s"
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1406,15 +1427,15 @@ msgstr "没有该动作:%s"
 msgid "Malformed request body"
 msgstr "错误格式的请求主体"
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr "不支持的Content-Type"
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr "错误格式的请求url"
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr "%(url)s返回错误:%(e)s"
@@ -1484,37 +1505,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr "域不存在"
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr "vol=%s"
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr "删除id为 %s 的卷"
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr "提供了无效的imageRef。"
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr "创建 %s GB的卷"
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, fuzzy, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
@@ -1525,17 +1546,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1543,20 +1564,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, fuzzy, python-format
 msgid "Removing options '%s' from query"
 msgstr "正在从查询语句中移除选项 '%(unk_opt_str)s'"
@@ -1769,282 +1790,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2370,50 +2391,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, fuzzy, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2529,57 +2550,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "没有为卷 %(volume_id)s 找到目标id。"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, fuzzy, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr "正在删除基文件:%s"
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "尝试删除不存在的控制台%(console_id)s。"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2602,17 +2623,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, fuzzy, python-format
 msgid "Removing iscsi_target: %s"
 msgstr "正在重启虚拟机 %s"
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2622,22 +2643,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2662,33 +2683,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "无法为VDI %s 找到VBD"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2705,11 +2731,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2747,22 +2773,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "必须可用"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2994,11 +3020,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, fuzzy, python-format
 msgid "Original exception being dropped: %s"
 msgstr "正在丢弃原来的异常。"
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3143,7 +3174,6 @@ msgstr "正在运行cmd (subprocess):%s"
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr "运行结果为 %s"
@@ -3154,7 +3184,6 @@ msgid "%r failed. Retrying."
 msgstr "%r 失败,重试。"
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr "运行cmd (SSH):%s"
@@ -3322,7 +3351,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3330,88 +3359,93 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr "未打包的上下文:%s"
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr "已接收 %s"
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr "没有适用于消息的方法:%s"
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr "没有适用于消息的方法:%s"
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, fuzzy, python-format
 msgid "Making synchronous call on %s ..."
 msgstr "在 %s 做异步call"
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr "消息ID(MSG_ID)是 %s"
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr "在 %s 做异步cast"
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr "做异步fanout cast"
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "发生未知异常。"
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
@@ -3420,66 +3454,69 @@ msgstr ""
 "远程错误:%(exc_type)s %(value)s\n"
 "%(traceback)s。"
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr "无效的RPC连接重用。"
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
-#, fuzzy, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
-msgstr "删除 %(base_file)s 失败,错误是 %(error)s"
+#: cinder/openstack/common/rpc/common.py:164
+#, python-format
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
+msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr "返回 %s 异常给调用者"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr "正在重新连接位于 %(hostname)s:%(port)d 的AMQP服务器"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr "连接到位于 %(hostname)s:%(port)d 的AMQP服务器"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
@@ -3488,57 +3525,61 @@ msgstr ""
 "无法连接到位于%(hostname)s:%(port)d的AMQP server,尝试已经 %(max_retries)d "
 "次:%(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr "位于%(hostname)s:%(port)d的AMQP服务器不可达:%(err_str)s。%(sleep_time)d 秒钟后请再尝试。"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr "为topic '%(topic)s'声明消费者失败:%(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr "等待RPC响应超时:%s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr "从队列中消费消息失败:%s"
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr "给topic '%(topic)s'发布消息失败:%(err_str)s"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, fuzzy, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr "无法连接到AMQP服务器:%s "
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr "连接到 %s 的AMQP服务器"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr "重建AMQP队列"
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3575,6 +3616,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3606,145 +3651,138 @@ msgstr "正在注销虚拟机 %s"
 msgid "In reactor registered"
 msgstr "没有虚拟机注册"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, fuzzy, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr "给定数据:%s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 #, fuzzy
 msgid "Creating payload"
 msgstr "正在创建镜像"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, fuzzy, python-format
 msgid "Received message: %s"
 msgstr "已接收 %s"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 #, fuzzy
 msgid "RPC Message Invalid."
 msgstr "请求无效。"
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 #, fuzzy
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr "xenapi.fake 没有 %s 的实现"
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3905,12 +3943,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr "FAKE ISCSI: %s"
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3958,7 +3996,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3967,12 +4005,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr "无法识别的 read_deleted 取值”%s“"
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, fuzzy, python-format
 msgid ""
 "CLI output:\n"
@@ -3980,7 +4018,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr "伪命令的标准输出stdout='%(stdout)s' 标准错误输出 stderr='%(stderr)s'"
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4070,7 +4108,7 @@ msgstr "解码JSON:%s"
 msgid "Volume in unexpected state"
 msgstr "意外的状态码"
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr "状态必须可用"
 
@@ -4101,178 +4139,197 @@ msgstr "更新代理失败:%(resp)r"
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr "搜索条件: %s"
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr "已经附加"
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "卷组状态必须可获取"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr "必须可用"
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, fuzzy, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr "%(pid)s 的配额超出,尝试创建 %(size)sG 的卷"
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, fuzzy, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr "%(pid)s 已经超过配额,试图运行 %(min_count)s 个实例"
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "卷组状态必须可获取"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 #, fuzzy
 msgid "Metadata property key greater than 255 characters"
 msgstr "安全组 %s 不能比255个字符更长。"
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 #, fuzzy
 msgid "Metadata property value greater than 255 characters"
 msgstr "安全组 %s 不能比255个字符更长。"
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "卷组状态必须可获取"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 #, fuzzy
 msgid "Volume status is in-use."
 msgstr "卷 %s:卷繁忙"
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4306,59 +4363,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr "采用discovery,ISCSI provider_location 没有存储"
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "无法为卷 %s 找到 iSCSI 导出"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr "ISCSI Discovery:找到 %s"
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4366,10 +4423,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, fuzzy, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
+
+#: cinder/volume/iscsi.py:80
+#, fuzzy, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr "跳过remove_export。没有为卷导出iscsi_target:%d"
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, fuzzy, python-format
+msgid "Symbolic link %s not found"
+msgstr "没有找到标记 [%s]"
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, fuzzy, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4441,7 +4536,7 @@ msgstr "卷%s:删除中"
 msgid "volume is not local to this node"
 msgstr "卷不属于这个节点"
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr "卷%s:正在移除导出"
@@ -4451,199 +4546,209 @@ msgstr "卷%s:正在移除导出"
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 #, fuzzy
 msgid "Failed to update usages deleting volume"
 msgstr "更新代理失败:%(resp)r"
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr "卷%s:删除成功"
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr "快照 %s:正在创建"
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr "快照 %s:创建成功"
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr "快照 %s:正在删除"
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr "快照 %s:删除成功"
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, fuzzy, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr "把卷 %(volume_id)s 附加到实例 %(instance_id)s 上位置在 %(device)s"
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 #, fuzzy
 msgid "Updating volume status"
 msgstr "更新主机状态"
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr "收到通知 {%s}"
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4697,65 +4802,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr "name不能是None"
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, fuzzy, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr "跳过remove_export。没有为卷提供iscsi_target:%d"
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, fuzzy, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr "跳过remove_export。没有为卷导出iscsi_target:%d"
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, fuzzy, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, fuzzy, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, fuzzy, python-format
 msgid "Creating clone of volume: %s"
 msgstr "创建卷 %s 的快照"
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4855,7 +4931,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4939,207 +5014,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, fuzzy, python-format
 msgid "casted to %s"
 msgstr "嵌套(调用)返回 %s"
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, fuzzy, python-format
 msgid "Exception during mounting %s"
 msgstr "加载扩展发生异常:%s"
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5210,56 +5300,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, fuzzy, python-format
-msgid "Symbolic link %s not found"
-msgstr "没有找到标记 [%s]"
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5279,42 +5349,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr "镜像已经挂载"
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5525,179 +5595,179 @@ msgstr "Sheepdog 没有工作:%s"
 msgid "Sheepdog is not working"
 msgstr "Sheepdog 没有工作"
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr "SolidFire API 调用的参数:%s"
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr "调用 json.loads() 引起异常:%s"
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr "SolidFire API调用结果:%s"
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, fuzzy, python-format
 msgid "API response: %s"
 msgstr "响应 %s"
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr "找到solidfire帐户:%s"
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr "solidfire帐户:%s 不存在,正在创建..."
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 #, fuzzy
 msgid "Failed to get model update from clone"
 msgstr "为ip: %s获取元数据失败"
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr "进入SolidFire delete_volume..."
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr "离开SolidFire delete_volume"
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr "正在执行SolidFire ensure_export..."
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr "正在执行SolidFire create_export..."
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 #, fuzzy
 msgid "Updating cluster status info"
 msgstr "更新主机状态"
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "无法得到最新的状态:%s"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7114,123 +7184,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, fuzzy, python-format
 msgid "%s is not set"
 msgstr "租户ID没有设"
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7239,71 +7309,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7337,198 +7407,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7536,8 +7606,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7557,7 +7627,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7566,27 +7636,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7691,7 +7761,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8455,42 +8525,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr "返回CLIQ命令 %s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr "CLIQ命令 %(verb)s %(cliq_args)s 错误格式的响应。Result=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr "在运行CLIQ命令 %(verb)s %(cliq_args)s 时发生错误。输出结果 Result=%(out)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr "集群 %(cluster_name)s 有意外数量的虚拟 ip 地址。输出结果 Result=%(_xml)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr "卷信息:%(volume_name)s => %(volume_attributes)s"
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr "不支持local_path"
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr "指定san_password或者san_private_key"
@@ -8509,160 +8543,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr "没有为 %(zfs_poolname)s 找到LUID。Output=%(out)s"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "握手出错:%s"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, fuzzy, python-format
 msgid "Volume (%s) already exists on array"
 msgstr "安全组 %s 已经存在"
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr "返回CLIQ命令 %s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr "CLIQ命令 %(verb)s %(cliq_args)s 错误格式的响应。Result=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr "在运行CLIQ命令 %(verb)s %(cliq_args)s 时发生错误。输出结果 Result=%(out)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr "集群 %(cluster_name)s 有意外数量的虚拟 ip 地址。输出结果 Result=%(_xml)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr "卷信息:%(volume_name)s => %(volume_attributes)s"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr "不支持local_path"
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9386,7 +9500,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9479,7 +9593,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9515,120 +9629,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10491,14 +10593,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr "未知的基文件:%s"
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10526,16 +10620,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10554,19 +10638,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr "正在删除有快照的卷  %(volume_name)s"
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr "卷 %s:跳过导出"
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10579,230 +10653,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
+#~ msgstr "_create: %s"
+
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
-#~ msgstr "_create: %s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgstr ""
+
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
+#~ msgstr "主机 %(host)s 没有启动或者不存在。"
+
 #~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "image '%s' not found - trying diff format name"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr "删除 %(base_file)s 失败,错误是 %(error)s"
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr "跳过ensure_export。没有为卷提供iscsi_target:%d"
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "握手出错:%s"
+
diff --git a/cinder/locale/zh_HK/LC_MESSAGES/cinder.po b/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
index fe0dc8700..f2153b3f0 100644
--- a/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_HK/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Cinder\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2013-05-29 08:13+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Chinese (Hong Kong) "
@@ -28,11 +28,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -78,7 +78,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr ""
 
@@ -130,7 +130,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -164,7 +164,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -342,32 +342,32 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
 #, python-format
-msgid "Could not find parameter %(param)s"
+msgid "Could not find config at %(path)s"
 msgstr ""
 
 #: cinder/exception.py:385
 #, python-format
-msgid "Could not load paste app '%(name)s' from %(path)s"
+msgid "Could not find parameter %(param)s"
 msgstr ""
 
 #: cinder/exception.py:389
 #, python-format
-msgid "No valid host was found. %(reason)s"
+msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:398
+#: cinder/exception.py:393
 #, python-format
-msgid "Host %(host)s is not up or doesn't exist."
+msgid "No valid host was found. %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:402
@@ -658,6 +658,11 @@ msgstr ""
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -693,11 +698,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -811,46 +816,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, python-format
 msgid "Unable to find ca_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -866,11 +871,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -991,7 +996,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1286,7 +1291,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1299,7 +1320,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1347,47 +1368,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1399,15 +1420,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1475,37 +1496,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1516,17 +1537,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1534,20 +1555,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1756,282 +1777,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2357,50 +2378,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2516,57 +2537,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2589,17 +2610,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2609,22 +2630,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2649,33 +2670,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, python-format
 msgid "Unable to find LV: %s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2692,11 +2718,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2734,21 +2760,21 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 msgid "Volume must be available"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2973,11 +2999,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3120,7 +3151,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3131,7 +3161,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3298,7 +3327,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3306,210 +3335,222 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:205
+#, python-format
+msgid "_call_waiters: %s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 msgid "An unknown RPC related exception occurred."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3546,6 +3587,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3575,142 +3620,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3869,12 +3907,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3920,7 +3958,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3929,12 +3967,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3942,7 +3980,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4027,7 +4065,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4058,172 +4096,191 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 msgid "Volume status must be available to reserve"
 msgstr ""
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 msgid "Volume Snapshot status must be available or error"
 msgstr ""
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 msgid "Volume status must be available/in-use."
 msgstr ""
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4257,59 +4314,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr ""
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4317,10 +4374,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4391,7 +4486,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4401,197 +4496,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4645,65 +4750,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4803,7 +4879,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4887,207 +4962,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5158,56 +5248,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5227,42 +5297,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5471,176 +5541,176 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 msgid "Failed to get updated stats"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7048,123 +7118,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7173,71 +7243,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7271,198 +7341,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7470,8 +7540,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7486,7 +7556,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7495,27 +7565,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7620,7 +7690,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8383,42 +8453,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8437,160 +8471,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, python-format
-msgid "Error running ssh command: %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9314,7 +9428,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9407,7 +9521,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9443,120 +9557,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10419,14 +10521,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10454,16 +10548,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10482,19 +10566,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10507,230 +10581,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
+#~ msgstr ""
+
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
 #~ msgstr ""
 
diff --git a/cinder/locale/zh_TW/LC_MESSAGES/cinder.po b/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
index 407d1fdee..292ce2c12 100644
--- a/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
+++ b/cinder/locale/zh_TW/LC_MESSAGES/cinder.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  cinder\n"
 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
-"POT-Creation-Date: 2014-02-03 06:16+0000\n"
+"POT-Creation-Date: 2014-02-15 06:16+0000\n"
 "PO-Revision-Date: 2012-03-07 02:00+0000\n"
 "Last-Translator: Charles Hsu <charles0126+openstack@gmail.com>\n"
 "Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
@@ -27,11 +27,11 @@ msgstr ""
 msgid "read_deleted can only be one of 'no', 'yes' or 'only', not %r"
 msgstr ""
 
-#: cinder/exception.py:66 cinder/brick/exception.py:33
+#: cinder/exception.py:66 cinder/brick/exception.py:31
 msgid "An unknown exception occurred."
 msgstr "發生一個未知例外"
 
-#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:86
+#: cinder/exception.py:88 cinder/openstack/common/rpc/common.py:88
 msgid "Exception in string format operation"
 msgstr ""
 
@@ -77,7 +77,7 @@ msgstr ""
 msgid "Volume driver not ready."
 msgstr ""
 
-#: cinder/exception.py:145 cinder/brick/exception.py:74
+#: cinder/exception.py:145 cinder/brick/exception.py:77
 msgid "Unacceptable parameters."
 msgstr "不可接受的參數值"
 
@@ -129,7 +129,7 @@ msgstr ""
 msgid "Invalid host: %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:193 cinder/brick/exception.py:81
+#: cinder/exception.py:193 cinder/brick/exception.py:84
 #, python-format
 msgid "%(err)s"
 msgstr ""
@@ -163,7 +163,7 @@ msgstr ""
 msgid "Expected a uuid but received %(uuid)s."
 msgstr ""
 
-#: cinder/exception.py:222 cinder/brick/exception.py:68
+#: cinder/exception.py:222 cinder/brick/exception.py:71
 msgid "Resource could not be found."
 msgstr ""
 
@@ -341,34 +341,34 @@ msgstr ""
 
 #: cinder/exception.py:373
 #, python-format
-msgid "Malformed message body: %(reason)s"
+msgid "Volume type encryption for type %(type_id)s does not exist."
 msgstr ""
 
 #: cinder/exception.py:377
 #, python-format
-msgid "Could not find config at %(path)s"
+msgid "Malformed message body: %(reason)s"
 msgstr ""
 
 #: cinder/exception.py:381
+#, python-format
+msgid "Could not find config at %(path)s"
+msgstr ""
+
+#: cinder/exception.py:385
 #, fuzzy, python-format
 msgid "Could not find parameter %(param)s"
 msgstr "找不到Volume %s"
 
-#: cinder/exception.py:385
+#: cinder/exception.py:389
 #, python-format
 msgid "Could not load paste app '%(name)s' from %(path)s"
 msgstr ""
 
-#: cinder/exception.py:389
+#: cinder/exception.py:393
 #, python-format
 msgid "No valid host was found. %(reason)s"
 msgstr ""
 
-#: cinder/exception.py:398
-#, python-format
-msgid "Host %(host)s is not up or doesn't exist."
-msgstr ""
-
 #: cinder/exception.py:402
 #, python-format
 msgid "Quota exceeded: code=%(code)s"
@@ -659,6 +659,11 @@ msgstr "發生一個未知例外"
 msgid "No mounted Gluster shares found"
 msgstr ""
 
+#: cinder/exception.py:666
+#, python-format
+msgid "Failed to remove export for volume %(volume)s: %(reason)s"
+msgstr ""
+
 #: cinder/manager.py:133
 msgid "Notifying Schedulers of capabilities ..."
 msgstr ""
@@ -694,11 +699,11 @@ msgstr ""
 msgid "Failed to roll back reservations %s"
 msgstr ""
 
-#: cinder/quota.py:876
+#: cinder/quota.py:874
 msgid "Cannot register resource"
 msgstr ""
 
-#: cinder/quota.py:879
+#: cinder/quota.py:877
 msgid "Cannot register resources"
 msgstr ""
 
@@ -812,46 +817,46 @@ msgstr ""
 msgid "Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/wsgi.py:127 cinder/openstack/common/sslutils.py:50
+#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:50
 #, python-format
 msgid "Unable to find cert_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:130 cinder/openstack/common/sslutils.py:53
+#: cinder/wsgi.py:139 cinder/openstack/common/sslutils.py:53
 #, fuzzy, python-format
 msgid "Unable to find ca_file : %s"
 msgstr "找不到Volume %s"
 
-#: cinder/wsgi.py:133 cinder/openstack/common/sslutils.py:56
+#: cinder/wsgi.py:142 cinder/openstack/common/sslutils.py:56
 #, python-format
 msgid "Unable to find key_file : %s"
 msgstr ""
 
-#: cinder/wsgi.py:136 cinder/openstack/common/sslutils.py:59
+#: cinder/wsgi.py:145 cinder/openstack/common/sslutils.py:59
 msgid ""
 "When running server in SSL mode, you must specify both a cert_file and "
 "key_file option value in your configuration file"
 msgstr ""
 
-#: cinder/wsgi.py:169
+#: cinder/wsgi.py:178
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for 30 seconds"
 msgstr ""
 
-#: cinder/wsgi.py:206
+#: cinder/wsgi.py:215
 #, python-format
 msgid "Started %(name)s on %(host)s:%(port)s"
 msgstr ""
 
-#: cinder/wsgi.py:226
+#: cinder/wsgi.py:235
 msgid "Stopping WSGI server."
 msgstr ""
 
-#: cinder/wsgi.py:244
+#: cinder/wsgi.py:253
 msgid "WSGI server has stopped."
 msgstr ""
 
-#: cinder/wsgi.py:313
+#: cinder/wsgi.py:322
 msgid "You must implement __call__"
 msgstr ""
 
@@ -867,11 +872,11 @@ msgid ""
 "cinder.api.middleware.auth:pipeline_factory instead."
 msgstr ""
 
-#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:266
+#: cinder/api/common.py:92 cinder/api/common.py:126 cinder/volume/api.py:280
 msgid "limit param must be an integer"
 msgstr ""
 
-#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:263
+#: cinder/api/common.py:95 cinder/api/common.py:130 cinder/volume/api.py:277
 msgid "limit param must be positive"
 msgstr ""
 
@@ -992,7 +997,7 @@ msgstr ""
 msgid "subclasses must implement construct()!"
 msgstr ""
 
-#: cinder/api/contrib/admin_actions.py:81
+#: cinder/api/contrib/admin_actions.py:82
 #, python-format
 msgid "Updating %(resource)s '%(id)s' with '%(update)r'"
 msgstr ""
@@ -1287,7 +1292,23 @@ msgstr ""
 msgid "Create body is not valid."
 msgstr ""
 
-#: cinder/api/contrib/volume_type_encryption.py:157
+#: cinder/api/contrib/volume_type_encryption.py:142
+msgid "Request body empty."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:145
+msgid "Update body is not valid. It must contain \"encryption.\""
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:148
+msgid "Request body contains too many items."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:154
+msgid "Cannot update encryption specs. Volume type in use."
+msgstr ""
+
+#: cinder/api/contrib/volume_type_encryption.py:189
 msgid "Cannot delete encryption specs. Volume type in use."
 msgstr ""
 
@@ -1300,7 +1321,7 @@ msgstr ""
 msgid "Caught error: %s"
 msgstr ""
 
-#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:984
+#: cinder/api/middleware/fault.py:53 cinder/api/openstack/wsgi.py:986
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
@@ -1348,47 +1369,47 @@ msgid ""
 "cinder.api.urlmap:urlmap_factory instead."
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:634
+#: cinder/api/openstack/wsgi.py:220 cinder/api/openstack/wsgi.py:636
 msgid "cannot understand JSON"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:639
+#: cinder/api/openstack/wsgi.py:641
 msgid "too many body keys"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:677
+#: cinder/api/openstack/wsgi.py:679
 #, python-format
 msgid "Exception handling resource: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:682
+#: cinder/api/openstack/wsgi.py:684
 #, python-format
 msgid "Fault thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:685
+#: cinder/api/openstack/wsgi.py:687
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:793
+#: cinder/api/openstack/wsgi.py:795
 msgid "Empty body provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:799
+#: cinder/api/openstack/wsgi.py:801
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:803
+#: cinder/api/openstack/wsgi.py:805
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:914
+#: cinder/api/openstack/wsgi.py:916
 #, python-format
 msgid "There is no such action: %s"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:917 cinder/api/openstack/wsgi.py:930
+#: cinder/api/openstack/wsgi.py:919 cinder/api/openstack/wsgi.py:932
 #: cinder/api/v1/snapshot_metadata.py:53 cinder/api/v1/snapshot_metadata.py:71
 #: cinder/api/v1/snapshot_metadata.py:96 cinder/api/v1/snapshot_metadata.py:121
 #: cinder/api/v1/volume_metadata.py:53 cinder/api/v1/volume_metadata.py:71
@@ -1400,15 +1421,15 @@ msgstr ""
 msgid "Malformed request body"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:927
+#: cinder/api/openstack/wsgi.py:929
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:939
+#: cinder/api/openstack/wsgi.py:941
 msgid "Malformed request url"
 msgstr ""
 
-#: cinder/api/openstack/wsgi.py:987
+#: cinder/api/openstack/wsgi.py:989
 #, python-format
 msgid "%(url)s returned a fault: %(e)s"
 msgstr ""
@@ -1476,37 +1497,37 @@ msgstr ""
 msgid "volume does not exist"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:111
+#: cinder/api/v1/volumes.py:112
 #, python-format
 msgid "vol=%s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:290 cinder/api/v2/volumes.py:228
+#: cinder/api/v1/volumes.py:291 cinder/api/v2/volumes.py:229
 #, python-format
 msgid "Delete volume with id: %s"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:344 cinder/api/v1/volumes.py:348
-#: cinder/api/v2/volumes.py:298 cinder/api/v2/volumes.py:302
+#: cinder/api/v1/volumes.py:345 cinder/api/v1/volumes.py:349
+#: cinder/api/v2/volumes.py:299 cinder/api/v2/volumes.py:303
 msgid "Invalid imageRef provided."
 msgstr ""
 
-#: cinder/api/v1/volumes.py:388 cinder/api/v2/volumes.py:354
+#: cinder/api/v1/volumes.py:389 cinder/api/v2/volumes.py:355
 #, python-format
 msgid "snapshot id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:401
+#: cinder/api/v1/volumes.py:402
 #, python-format
 msgid "source vol id:%s not found"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:412 cinder/api/v2/volumes.py:377
+#: cinder/api/v1/volumes.py:413 cinder/api/v2/volumes.py:378
 #, python-format
 msgid "Create volume of %s GB"
 msgstr ""
 
-#: cinder/api/v1/volumes.py:496
+#: cinder/api/v1/volumes.py:502
 #, python-format
 msgid "Removing options '%(bad_options)s' from query"
 msgstr ""
@@ -1517,17 +1538,17 @@ msgid "Snapshot could not be found"
 msgstr ""
 
 #: cinder/api/v2/snapshots.py:174 cinder/api/v2/snapshots.py:234
-#: cinder/api/v2/volumes.py:313 cinder/api/v2/volumes.py:419
+#: cinder/api/v2/volumes.py:314 cinder/api/v2/volumes.py:420
 #, python-format
 msgid "Missing required element '%s' in request body"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:217
-#: cinder/api/v2/volumes.py:234 cinder/api/v2/volumes.py:449
+#: cinder/api/v2/snapshots.py:190 cinder/api/v2/volumes.py:218
+#: cinder/api/v2/volumes.py:235 cinder/api/v2/volumes.py:452
 msgid "Volume could not be found"
 msgstr ""
 
-#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:415
+#: cinder/api/v2/snapshots.py:230 cinder/api/v2/volumes.py:416
 msgid "Missing request body"
 msgstr ""
 
@@ -1535,20 +1556,20 @@ msgstr ""
 msgid "Volume type not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:237
+#: cinder/api/v2/volumes.py:238
 msgid "Volume cannot be deleted while in attached state"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:343
+#: cinder/api/v2/volumes.py:344
 msgid "Volume type not found."
 msgstr ""
 
-#: cinder/api/v2/volumes.py:366
+#: cinder/api/v2/volumes.py:367
 #, python-format
 msgid "source volume id:%s not found"
 msgstr ""
 
-#: cinder/api/v2/volumes.py:472
+#: cinder/api/v2/volumes.py:478
 #, python-format
 msgid "Removing options '%s' from query"
 msgstr ""
@@ -1761,282 +1782,282 @@ msgstr ""
 msgid "Delete backup finished, backup %s deleted."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:116
+#: cinder/backup/drivers/ceph.py:120
 msgid ""
-"rbd striping not supported - ignoring configuration settings for rbd "
+"RBD striping not supported - ignoring configuration settings for rbd "
 "striping"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:147
+#: cinder/backup/drivers/ceph.py:143
 #, python-format
 msgid "invalid user '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:213
-msgid "backup_id required"
+#: cinder/backup/drivers/ceph.py:209
+msgid "Backup id required"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:224
+#: cinder/backup/drivers/ceph.py:221
 #, python-format
-msgid "discarding %(length)s bytes from offset %(offset)s"
+msgid "Discarding %(length)s bytes from offset %(offset)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:232
+#: cinder/backup/drivers/ceph.py:229
 #, python-format
-msgid "writing zeroes chunk %d"
+msgid "Writing zeroes chunk %d"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:246
+#: cinder/backup/drivers/ceph.py:243
 #, python-format
-msgid "transferring data between '%(src)s' and '%(dest)s'"
+msgid "Transferring data between '%(src)s' and '%(dest)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:250
+#: cinder/backup/drivers/ceph.py:247
 #, python-format
 msgid "%(chunks)s chunks of %(bytes)s bytes to be transferred"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:269
+#: cinder/backup/drivers/ceph.py:266
 #, python-format
-msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
+msgid "Transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:279
+#: cinder/backup/drivers/ceph.py:276
 #, python-format
-msgid "transferring remaining %s bytes"
+msgid "Transferring remaining %s bytes"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:295
+#: cinder/backup/drivers/ceph.py:292
 #, python-format
-msgid "creating base image '%s'"
+msgid "Creating base image '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:322 cinder/backup/drivers/ceph.py:603
+#: cinder/backup/drivers/ceph.py:319 cinder/backup/drivers/ceph.py:603
 #, python-format
-msgid "deleting backup snapshot='%s'"
+msgid "Deleting backup snapshot='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:325
-msgid "no backup snapshot to delete"
+#: cinder/backup/drivers/ceph.py:322
+msgid "No backup snapshot to delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:361
+#: cinder/backup/drivers/ceph.py:358
 #, python-format
-msgid "trying diff format name format basename='%s'"
+msgid "Trying diff format name format basename='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:369
+#: cinder/backup/drivers/ceph.py:366
 #, python-format
 msgid "image %s not found"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:377
+#: cinder/backup/drivers/ceph.py:374
 #, python-format
-msgid "base image still has %s snapshots so skipping base image delete"
+msgid "Base image still has %s snapshots so skipping base image delete"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:382
+#: cinder/backup/drivers/ceph.py:379
 #, python-format
-msgid "deleting base image='%s'"
+msgid "Deleting base image='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:389
+#: cinder/backup/drivers/ceph.py:386
 #, python-format
-msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
+msgid "Image busy, retrying %(retries)s more time(s) in %(delay)ss"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:394
-msgid "max retries reached - raising error"
+#: cinder/backup/drivers/ceph.py:391
+msgid "Max retries reached - raising error"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:397
+#: cinder/backup/drivers/ceph.py:394
 #, python-format
-msgid "base backup image='%s' deleted)"
+msgid "Base backup image='%s' deleted)"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:407
+#: cinder/backup/drivers/ceph.py:404
 #, python-format
-msgid "deleting source snap '%s'"
+msgid "Deleting source snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:453
+#: cinder/backup/drivers/ceph.py:450
 #, python-format
-msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+msgid "Performing differential transfer from '%(src)s' to '%(dest)s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:478
 #, python-format
-msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+msgid "RBD diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:488
 #, python-format
-msgid "image '%s' not found - trying diff format name"
+msgid "Image '%s' not found - trying diff format name"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:493
 #, python-format
-msgid "diff format image '%s' not found"
+msgid "Diff format image '%s' not found"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:528
 #, python-format
-msgid "using --from-snap '%s'"
+msgid "Using --from-snap '%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:543
 #, python-format
-msgid "source snap '%s' is stale so deleting"
+msgid "Source snapshot '%s' is stale so deleting"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:555
 #, python-format
 msgid ""
-"snap='%(snap)s' does not exist in base image='%(base)s' - aborting "
+"Snapshot='%(snap)s' does not exist in base image='%(base)s' - aborting "
 "incremental backup"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:566
 #, python-format
-msgid "creating backup snapshot='%s'"
+msgid "Creating backup snapshot='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:586
 #, python-format
-msgid "differential backup transfer completed in %.4fs"
+msgid "Differential backup transfer completed in %.4fs"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:595
-msgid "differential backup transfer failed"
+msgid "Differential backup transfer failed"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:625
 #, python-format
-msgid "creating base image='%s'"
+msgid "Creating base image='%s'"
 msgstr ""
 
 #: cinder/backup/drivers/ceph.py:634
-msgid "copying data"
+msgid "Copying data"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:694
+#: cinder/backup/drivers/ceph.py:695
 #, python-format
-msgid "looking for snapshot of backup base '%s'"
+msgid "Looking for snapshot of backup base '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:697
+#: cinder/backup/drivers/ceph.py:698
 #, python-format
-msgid "backup base '%s' has no snapshots"
+msgid "Backup base '%s' has no snapshots"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:704
+#: cinder/backup/drivers/ceph.py:705
 #, python-format
-msgid "backup '%s' has no snapshot"
+msgid "Backup '%s' has no snapshot"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:708
+#: cinder/backup/drivers/ceph.py:709
 #, python-format
-msgid "backup should only have one snapshot but instead has %s"
+msgid "Backup should only have one snapshot but instead has %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:713
+#: cinder/backup/drivers/ceph.py:714
 #, python-format
-msgid "found snapshot '%s'"
+msgid "Found snapshot '%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:734
-msgid "need non-zero volume size"
+#: cinder/backup/drivers/ceph.py:735
+msgid "Need non-zero volume size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:751
+#: cinder/backup/drivers/ceph.py:752
 #, python-format
 msgid "Starting backup of volume='%s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:764
-msgid "forcing full backup"
+#: cinder/backup/drivers/ceph.py:765
+msgid "Forcing full backup"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:776
+#: cinder/backup/drivers/ceph.py:777
 #, python-format
-msgid "backup '%s' finished."
+msgid "Backup '%s' finished."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:834
-msgid "adjusting restore vol size"
+#: cinder/backup/drivers/ceph.py:836
+msgid "Adjusting restore vol size"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:846
+#: cinder/backup/drivers/ceph.py:848
 #, python-format
-msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+msgid "Attempting incremental restore from base='%(base)s' snap='%(snap)s'"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:858
-msgid "differential restore failed, trying full restore"
+#: cinder/backup/drivers/ceph.py:860
+msgid "Differential restore failed, trying full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:869
+#: cinder/backup/drivers/ceph.py:871
 #, python-format
-msgid "restore transfer completed in %.4fs"
+msgid "Restore transfer completed in %.4fs"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:916
+#: cinder/backup/drivers/ceph.py:920
 #, python-format
-msgid "rbd has %s extents"
+msgid "RBD has %s extents"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:938
-msgid "dest volume is original volume - forcing full copy"
+#: cinder/backup/drivers/ceph.py:957
+msgid "Destination volume is same as backup source volume - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:959
-msgid "destination has extents - forcing full copy"
+#: cinder/backup/drivers/ceph.py:968
+msgid "Destination has extents - forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:964
+#: cinder/backup/drivers/ceph.py:973
 #, python-format
-msgid "no restore point found for backup='%s', forcing full copy"
+msgid "No restore point found for backup='%s', forcing full copy"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:995
-msgid "forcing full restore"
+#: cinder/backup/drivers/ceph.py:1004
+msgid "Forcing full restore"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1005
+#: cinder/backup/drivers/ceph.py:1014
 #, python-format
-msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+msgid "Starting restore from Ceph backup=%(src)s to volume=%(dest)s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1016
-msgid "volume_file does not support fileno() so skipping fsync()"
+#: cinder/backup/drivers/ceph.py:1025
+msgid "Volume_file does not support fileno() so skipping fsync()"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1021
-msgid "restore finished successfully."
+#: cinder/backup/drivers/ceph.py:1030
+msgid "Restore finished successfully."
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1023
+#: cinder/backup/drivers/ceph.py:1032
 #, python-format
-msgid "restore finished with error - %s"
+msgid "Restore finished with error - %s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1029
+#: cinder/backup/drivers/ceph.py:1038
 #, python-format
-msgid "delete started for backup=%s"
+msgid "Delete started for backup=%s"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1034
-msgid "rbd image not found but continuing anyway so that db entry can be removed"
+#: cinder/backup/drivers/ceph.py:1043
+msgid "RBD image not found but continuing anyway so that db entry can be removed"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1037
+#: cinder/backup/drivers/ceph.py:1046
 #, python-format
-msgid "delete '%s' finished with warning"
+msgid "Delete '%s' finished with warning"
 msgstr ""
 
-#: cinder/backup/drivers/ceph.py:1039
+#: cinder/backup/drivers/ceph.py:1048
 #, python-format
-msgid "delete '%s' finished"
+msgid "Delete '%s' finished"
 msgstr ""
 
 #: cinder/backup/drivers/swift.py:106
@@ -2362,50 +2383,50 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/brick/exception.py:55
+#: cinder/brick/exception.py:52
 #, python-format
 msgid "Exception in string format operation.  msg='%s'"
 msgstr ""
 
-#: cinder/brick/exception.py:85
+#: cinder/brick/exception.py:88
 msgid "We are unable to locate any Fibre Channel devices."
 msgstr ""
 
-#: cinder/brick/exception.py:89
+#: cinder/brick/exception.py:92
 msgid "Unable to find a Fibre Channel volume device."
 msgstr ""
 
-#: cinder/brick/exception.py:93
+#: cinder/brick/exception.py:96
 #, python-format
 msgid "Volume device not found at %(device)s."
 msgstr ""
 
-#: cinder/brick/exception.py:97
+#: cinder/brick/exception.py:100
 #, python-format
 msgid "Unable to find Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:101
+#: cinder/brick/exception.py:104
 #, python-format
 msgid "Failed to create Volume Group: %(vg_name)s"
 msgstr ""
 
-#: cinder/brick/exception.py:105
+#: cinder/brick/exception.py:108
 #, python-format
 msgid "Failed to create iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:109
+#: cinder/brick/exception.py:112
 #, python-format
 msgid "Failed to remove iscsi target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:113
+#: cinder/brick/exception.py:116
 #, python-format
 msgid "Failed to attach iSCSI target for volume %(volume_id)s."
 msgstr ""
 
-#: cinder/brick/exception.py:117
+#: cinder/brick/exception.py:120
 #, python-format
 msgid "Connect to volume via protocol %(protocol)s not supported."
 msgstr ""
@@ -2521,57 +2542,57 @@ msgstr ""
 msgid "Found multipath device = %(mdev)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:140
+#: cinder/brick/iscsi/iscsi.py:136
 msgid "Attempting recreate of backing lun..."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:158
+#: cinder/brick/iscsi/iscsi.py:154
 #, python-format
 msgid ""
 "Failed to recover attempt to create iscsi backing lun for volume "
 "id:%(vol_id)s: %(e)s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:177
+#: cinder/brick/iscsi/iscsi.py:173
 #, python-format
 msgid "Creating iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:184
+#: cinder/brick/iscsi/iscsi.py:180
 #, python-format
 msgid ""
 "Created volume path %(vp)s,\n"
 "content: %(vc)%"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:216 cinder/brick/iscsi/iscsi.py:365
+#: cinder/brick/iscsi/iscsi.py:212 cinder/brick/iscsi/iscsi.py:368
 #, fuzzy, python-format
 msgid "Failed to create iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "找不到Volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:227
+#: cinder/brick/iscsi/iscsi.py:223
 #, python-format
 msgid ""
 "Failed to create iscsi target for volume id:%(vol_id)s. Please ensure "
 "your tgtd config file contains 'include %(volumes_dir)s/*'"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:258
+#: cinder/brick/iscsi/iscsi.py:253
 #, python-format
 msgid "Removing iscsi_target for: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:262
+#: cinder/brick/iscsi/iscsi.py:257
 #, python-format
 msgid "Volume path %s does not exist, nothing to remove."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:280
+#: cinder/brick/iscsi/iscsi.py:275
 #, fuzzy, python-format
 msgid "Failed to remove iscsi target for volume id:%(vol_id)s: %(e)s"
 msgstr "找不到Volume %s"
 
-#: cinder/brick/iscsi/iscsi.py:290 cinder/brick/iscsi/iscsi.py:550
+#: cinder/brick/iscsi/iscsi.py:293 cinder/brick/iscsi/iscsi.py:547
 msgid "valid iqn needed for show_target"
 msgstr ""
 
@@ -2594,17 +2615,17 @@ msgstr ""
 msgid "Failed to create iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:532
+#: cinder/brick/iscsi/iscsi.py:529
 #, python-format
 msgid "Removing iscsi_target: %s"
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:542
+#: cinder/brick/iscsi/iscsi.py:539
 #, python-format
 msgid "Failed to remove iscsi target for volume id:%s."
 msgstr ""
 
-#: cinder/brick/iscsi/iscsi.py:571
+#: cinder/brick/iscsi/iscsi.py:568
 #, python-format
 msgid "Failed to add initiator iqn %s to target"
 msgstr ""
@@ -2614,22 +2635,22 @@ msgid "Error creating Volume Group"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:76 cinder/brick/local_dev/lvm.py:158
-#: cinder/brick/local_dev/lvm.py:474 cinder/brick/local_dev/lvm.py:503
-#: cinder/brick/local_dev/lvm.py:546 cinder/brick/local_dev/lvm.py:609
+#: cinder/brick/local_dev/lvm.py:478 cinder/brick/local_dev/lvm.py:507
+#: cinder/brick/local_dev/lvm.py:550 cinder/brick/local_dev/lvm.py:613
 #, python-format
 msgid "Cmd     :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:77 cinder/brick/local_dev/lvm.py:159
-#: cinder/brick/local_dev/lvm.py:475 cinder/brick/local_dev/lvm.py:504
-#: cinder/brick/local_dev/lvm.py:547 cinder/brick/local_dev/lvm.py:610
+#: cinder/brick/local_dev/lvm.py:479 cinder/brick/local_dev/lvm.py:508
+#: cinder/brick/local_dev/lvm.py:551 cinder/brick/local_dev/lvm.py:614
 #, python-format
 msgid "StdOut  :%s"
 msgstr ""
 
 #: cinder/brick/local_dev/lvm.py:78 cinder/brick/local_dev/lvm.py:160
-#: cinder/brick/local_dev/lvm.py:476 cinder/brick/local_dev/lvm.py:505
-#: cinder/brick/local_dev/lvm.py:548 cinder/brick/local_dev/lvm.py:611
+#: cinder/brick/local_dev/lvm.py:480 cinder/brick/local_dev/lvm.py:509
+#: cinder/brick/local_dev/lvm.py:552 cinder/brick/local_dev/lvm.py:615
 #, python-format
 msgid "StdErr  :%s"
 msgstr ""
@@ -2654,33 +2675,38 @@ msgid ""
 "not support it."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:473
+#: cinder/brick/local_dev/lvm.py:434
+#, python-format
+msgid "Created thin pool '%(pool)s' with size %(size)s of total %(free)sg"
+msgstr ""
+
+#: cinder/brick/local_dev/lvm.py:477
 msgid "Error creating Volume"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:489
+#: cinder/brick/local_dev/lvm.py:493
 #, fuzzy, python-format
 msgid "Unable to find LV: %s"
 msgstr "無法卸載 Volume %s"
 
-#: cinder/brick/local_dev/lvm.py:502
+#: cinder/brick/local_dev/lvm.py:506
 msgid "Error creating snapshot"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:545
+#: cinder/brick/local_dev/lvm.py:549
 msgid "Error activating LV"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:563
+#: cinder/brick/local_dev/lvm.py:567
 #, python-format
 msgid "Error reported running lvremove: CMD: %(command)s, RESPONSE: %(response)s"
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:568
+#: cinder/brick/local_dev/lvm.py:572
 msgid "Attempting udev settle and retry of lvremove..."
 msgstr ""
 
-#: cinder/brick/local_dev/lvm.py:608
+#: cinder/brick/local_dev/lvm.py:612
 msgid "Error extending Volume"
 msgstr ""
 
@@ -2697,11 +2723,11 @@ msgstr ""
 msgid "Already mounted: %s"
 msgstr ""
 
-#: cinder/common/config.py:125
+#: cinder/common/config.py:120
 msgid "Deploy v1 of the Cinder API."
 msgstr ""
 
-#: cinder/common/config.py:128
+#: cinder/common/config.py:123
 msgid "Deploy v2 of the Cinder API."
 msgstr ""
 
@@ -2739,22 +2765,22 @@ msgstr ""
 msgid "VolumeType %s deletion failed, VolumeType in use."
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2530
+#: cinder/db/sqlalchemy/api.py:2543
 #, python-format
 msgid "No backup with id %s"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2615
+#: cinder/db/sqlalchemy/api.py:2628
 #, fuzzy
 msgid "Volume must be available"
 msgstr "Volume 狀態需要可被使用"
 
-#: cinder/db/sqlalchemy/api.py:2639
+#: cinder/db/sqlalchemy/api.py:2652
 #, python-format
 msgid "Volume in unexpected state %s, expected awaiting-transfer"
 msgstr ""
 
-#: cinder/db/sqlalchemy/api.py:2662
+#: cinder/db/sqlalchemy/api.py:2675
 #, python-format
 msgid ""
 "Transfer %(transfer_id)s: Volume id %(volume_id)s in unexpected state "
@@ -2979,11 +3005,16 @@ msgstr ""
 msgid "Eventlet backdoor listening on %(port)s for process %(pid)d"
 msgstr ""
 
-#: cinder/openstack/common/excutils.py:48
+#: cinder/openstack/common/excutils.py:62
 #, python-format
 msgid "Original exception being dropped: %s"
 msgstr ""
 
+#: cinder/openstack/common/excutils.py:91
+#, python-format
+msgid "Unexpected exception occurred %d time(s)... retrying."
+msgstr ""
+
 #: cinder/openstack/common/fileutils.py:64
 #, python-format
 msgid "Reloading cached file %s"
@@ -3126,7 +3157,6 @@ msgstr ""
 
 #: cinder/openstack/common/processutils.py:167
 #: cinder/openstack/common/processutils.py:239
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:345
 #, python-format
 msgid "Result was %s"
 msgstr ""
@@ -3137,7 +3167,6 @@ msgid "%r failed. Retrying."
 msgstr ""
 
 #: cinder/openstack/common/processutils.py:218
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:318
 #, python-format
 msgid "Running cmd (SSH): %s"
 msgstr ""
@@ -3304,7 +3333,7 @@ msgstr ""
 msgid "Could not send notification to %(topic)s. Payload=%(message)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/__init__.py:105
+#: cinder/openstack/common/rpc/__init__.py:103
 #, python-format
 msgid ""
 "A RPC is being made while holding a lock. The locks currently held are "
@@ -3312,211 +3341,223 @@ msgid ""
 "following: [%(stack)s]."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:83
+#: cinder/openstack/common/rpc/amqp.py:75
 msgid "Pool creating new connection"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:208
+#: cinder/openstack/common/rpc/amqp.py:202
+#, python-format
+msgid "No calling threads waiting for msg_id : %(msg_id)s, message : %(data)s"
+msgstr ""
+
+#: cinder/openstack/common/rpc/amqp.py:205
 #, python-format
-msgid "no calling threads waiting for msg_id : %s, message : %s"
+msgid "_call_waiters: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:216
+#: cinder/openstack/common/rpc/amqp.py:212
 #, python-format
 msgid ""
-"Number of call waiters is greater than warning threshhold: %d. There "
-"could be a MulticallProxyWaiter leak."
+"Number of call waiters is greater than warning threshold: %d. There could"
+" be a MulticallProxyWaiter leak."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:299
+#: cinder/openstack/common/rpc/amqp.py:290
 #, python-format
 msgid "unpacked context: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:345
+#: cinder/openstack/common/rpc/amqp.py:342
 #, python-format
 msgid "UNIQUE_ID is %s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:414
+#: cinder/openstack/common/rpc/amqp.py:435
 #, python-format
 msgid "received %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:422
+#: cinder/openstack/common/rpc/amqp.py:443
 #, python-format
 msgid "no method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:423
+#: cinder/openstack/common/rpc/amqp.py:444
 #, python-format
 msgid "No method for message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:451
+#: cinder/openstack/common/rpc/amqp.py:472
 #: cinder/openstack/common/rpc/impl_zmq.py:280
 #, python-format
 msgid "Expected exception during message handling (%s)"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:459
+#: cinder/openstack/common/rpc/amqp.py:480
 #: cinder/openstack/common/rpc/impl_zmq.py:286
 msgid "Exception during message handling"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:594
+#: cinder/openstack/common/rpc/amqp.py:554
 #, python-format
 msgid "Making synchronous call on %s ..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:597
+#: cinder/openstack/common/rpc/amqp.py:557
 #, python-format
 msgid "MSG_ID is %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:631
+#: cinder/openstack/common/rpc/amqp.py:583
 #, python-format
 msgid "Making asynchronous cast on %s..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:640
+#: cinder/openstack/common/rpc/amqp.py:592
 msgid "Making asynchronous fanout cast..."
 msgstr ""
 
-#: cinder/openstack/common/rpc/amqp.py:668
+#: cinder/openstack/common/rpc/amqp.py:620
 #, python-format
 msgid "Sending %(event_type)s on %(topic)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:74
+#: cinder/openstack/common/rpc/common.py:76
 #, fuzzy
 msgid "An unknown RPC related exception occurred."
 msgstr "發生一個未知例外"
 
-#: cinder/openstack/common/rpc/common.py:104
+#: cinder/openstack/common/rpc/common.py:106
 #, python-format
 msgid ""
 "Remote error: %(exc_type)s %(value)s\n"
 "%(traceback)s."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:121
+#: cinder/openstack/common/rpc/common.py:123
 #, python-format
 msgid ""
 "Timeout while waiting on RPC response - topic: \"%(topic)s\", RPC method:"
 " \"%(method)s\" info: \"%(info)s\""
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:137
-#: cinder/openstack/common/rpc/common.py:138
-#: cinder/openstack/common/rpc/common.py:139
+#: cinder/openstack/common/rpc/common.py:140
+#: cinder/openstack/common/rpc/common.py:141
+#: cinder/openstack/common/rpc/common.py:142
 msgid "<unknown>"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:143
+#: cinder/openstack/common/rpc/common.py:146
 #, python-format
 msgid "Found duplicate message(%(msg_id)s). Skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:147
+#: cinder/openstack/common/rpc/common.py:150
 msgid "Invalid reuse of an RPC connection."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:151
+#: cinder/openstack/common/rpc/common.py:154
 #, python-format
 msgid "Specified RPC version, %(version)s, not supported by this endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:156
+#: cinder/openstack/common/rpc/common.py:159
 #, python-format
 msgid ""
 "Specified RPC envelope version, %(version)s, not supported by this "
 "endpoint."
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:280
+#: cinder/openstack/common/rpc/common.py:164
 #, python-format
-msgid "Failed to sanitize %(item)s. Key error %(err)s"
+msgid "Specified RPC version cap, %(version_cap)s, is too low"
 msgstr ""
 
-#: cinder/openstack/common/rpc/common.py:302
+#: cinder/openstack/common/rpc/common.py:292
 #, python-format
 msgid "Returning exception %s to caller"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:166
-#: cinder/openstack/common/rpc/impl_qpid.py:164
-msgid "Failed to process message... skipping it."
+#: cinder/openstack/common/rpc/impl_kombu.py:156
+msgid "Failed to process message ... skipping it."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:477
+#: cinder/openstack/common/rpc/impl_kombu.py:160
+msgid "Failed to process message ... will requeue."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_kombu.py:495
 #, python-format
 msgid "Reconnecting to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:499
+#: cinder/openstack/common/rpc/impl_kombu.py:517
 #, python-format
 msgid "Connected to AMQP server on %(hostname)s:%(port)d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:536
+#: cinder/openstack/common/rpc/impl_kombu.py:554
 #, python-format
 msgid ""
 "Unable to connect to AMQP server on %(hostname)s:%(port)d after "
 "%(max_retries)d tries: %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:552
+#: cinder/openstack/common/rpc/impl_kombu.py:568
 #, python-format
 msgid ""
 "AMQP server on %(hostname)s:%(port)d is unreachable: %(err_str)s. Trying "
 "again in %(sleep_time)d seconds."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:606
-#: cinder/openstack/common/rpc/impl_qpid.py:507
+#: cinder/openstack/common/rpc/impl_kombu.py:622
+#: cinder/openstack/common/rpc/impl_qpid.py:573
 #, python-format
 msgid "Failed to declare consumer for topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:624
-#: cinder/openstack/common/rpc/impl_qpid.py:522
+#: cinder/openstack/common/rpc/impl_kombu.py:640
+#: cinder/openstack/common/rpc/impl_qpid.py:588
 #, python-format
 msgid "Timed out waiting for RPC response: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:628
-#: cinder/openstack/common/rpc/impl_qpid.py:526
+#: cinder/openstack/common/rpc/impl_kombu.py:644
+#: cinder/openstack/common/rpc/impl_qpid.py:592
 #, python-format
 msgid "Failed to consume message from queue: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_kombu.py:667
-#: cinder/openstack/common/rpc/impl_qpid.py:561
+#: cinder/openstack/common/rpc/impl_kombu.py:683
+#: cinder/openstack/common/rpc/impl_qpid.py:627
 #, python-format
 msgid "Failed to publish message to topic '%(topic)s': %(err_str)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:84
+#: cinder/openstack/common/rpc/impl_qpid.py:87
 #, python-format
 msgid "Invalid value for qpid_topology_version: %d"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:455
+#: cinder/openstack/common/rpc/impl_qpid.py:191
+msgid "Failed to process message... skipping it."
+msgstr ""
+
+#: cinder/openstack/common/rpc/impl_qpid.py:515
 #, python-format
 msgid "Unable to connect to AMQP server: %(e)s. Sleeping %(delay)s seconds"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:461
+#: cinder/openstack/common/rpc/impl_qpid.py:521
 #, python-format
 msgid "Connected to AMQP server on %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:474
+#: cinder/openstack/common/rpc/impl_qpid.py:534
 msgid "Re-established AMQP queues"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_qpid.py:534
+#: cinder/openstack/common/rpc/impl_qpid.py:600
 msgid "Error processing message.  Skipping it."
 msgstr ""
 
@@ -3553,6 +3594,10 @@ msgstr ""
 msgid "Subscribing to %s"
 msgstr ""
 
+#: cinder/openstack/common/rpc/impl_zmq.py:195
+msgid "ZeroMQ socket could not be closed."
+msgstr ""
+
 #: cinder/openstack/common/rpc/impl_zmq.py:200
 msgid "You cannot recv on this socket."
 msgstr ""
@@ -3582,142 +3627,135 @@ msgstr ""
 msgid "In reactor registered"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:387
+#: cinder/openstack/common/rpc/impl_zmq.py:388
 msgid "Consuming socket"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:437
+#: cinder/openstack/common/rpc/impl_zmq.py:438
 #, python-format
 msgid "Creating proxy for topic: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:443
+#: cinder/openstack/common/rpc/impl_zmq.py:444
 msgid "Topic contained dangerous characters."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:475
+#: cinder/openstack/common/rpc/impl_zmq.py:476
 msgid "Topic socket file creation failed."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:481
+#: cinder/openstack/common/rpc/impl_zmq.py:482
 #, python-format
 msgid "Local per-topic backlog buffer full for topic %(topic)s. Dropping message."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:497
+#: cinder/openstack/common/rpc/impl_zmq.py:498
 #, python-format
 msgid "Required IPC directory does not exist at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:506
+#: cinder/openstack/common/rpc/impl_zmq.py:507
 #, python-format
 msgid "Permission denied to IPC directory at %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:509
+#: cinder/openstack/common/rpc/impl_zmq.py:510
 msgid "Could not create ZeroMQ receiver daemon. Socket may already be in use."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:543
+#: cinder/openstack/common/rpc/impl_zmq.py:544
 #, python-format
 msgid "CONSUMER RECEIVED DATA: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:562
+#: cinder/openstack/common/rpc/impl_zmq.py:563
 msgid "ZMQ Envelope version unsupported or unknown."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:590
+#: cinder/openstack/common/rpc/impl_zmq.py:591
 msgid "Skipping topic registration. Already registered."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:597
+#: cinder/openstack/common/rpc/impl_zmq.py:598
 #, python-format
 msgid "Consumer is a zmq.%s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:649
+#: cinder/openstack/common/rpc/impl_zmq.py:650
 msgid "Creating payload"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:662
+#: cinder/openstack/common/rpc/impl_zmq.py:663
 msgid "Creating queue socket for reply waiter"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:675
+#: cinder/openstack/common/rpc/impl_zmq.py:676
 msgid "Sending cast"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:678
+#: cinder/openstack/common/rpc/impl_zmq.py:679
 msgid "Cast sent; Waiting reply"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:681
+#: cinder/openstack/common/rpc/impl_zmq.py:682
 #, python-format
 msgid "Received message: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:682
+#: cinder/openstack/common/rpc/impl_zmq.py:683
 msgid "Unpacking response"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:691
+#: cinder/openstack/common/rpc/impl_zmq.py:692
 msgid "Unsupported or unknown ZMQ envelope returned."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:698
+#: cinder/openstack/common/rpc/impl_zmq.py:699
 msgid "RPC Message Invalid."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:721
+#: cinder/openstack/common/rpc/impl_zmq.py:722
 #, python-format
 msgid "%(msg)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:724
+#: cinder/openstack/common/rpc/impl_zmq.py:725
 #, python-format
 msgid "Sending message(s) to: %s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:728
+#: cinder/openstack/common/rpc/impl_zmq.py:729
 msgid "No matchmaker results. Not casting."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:731
+#: cinder/openstack/common/rpc/impl_zmq.py:732
 msgid "No match from matchmaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/impl_zmq.py:771
-#, python-format
-msgid "topic is %s."
-msgstr ""
-
-#: cinder/openstack/common/rpc/impl_zmq.py:815
+#: cinder/openstack/common/rpc/impl_zmq.py:814
 #, python-format
 msgid "rpc_zmq_matchmaker = %(orig)s is deprecated; use %(new)s instead"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:53
+#: cinder/openstack/common/rpc/matchmaker.py:45
 msgid "Match not found by MatchMaker."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:89
+#: cinder/openstack/common/rpc/matchmaker.py:79
 msgid "Matchmaker does not implement registration or heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:239
+#: cinder/openstack/common/rpc/matchmaker.py:215
 #, python-format
-msgid "Matchmaker unregistered: %s, %s"
+msgid "Matchmaker unregistered: %(key)s, %(host)s"
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:250
+#: cinder/openstack/common/rpc/matchmaker.py:227
 msgid "Register before starting heartbeat."
 msgstr ""
 
-#: cinder/openstack/common/rpc/matchmaker.py:343
-#: cinder/openstack/common/rpc/matchmaker.py:361
-#: cinder/openstack/common/rpc/matchmaker_ring.py:79
-#: cinder/openstack/common/rpc/matchmaker_ring.py:97
+#: cinder/openstack/common/rpc/matchmaker_ring.py:75
+#: cinder/openstack/common/rpc/matchmaker_ring.py:93
 #, python-format
 msgid "No key defining hosts for topic '%s', see ringfile"
 msgstr ""
@@ -3876,12 +3914,12 @@ msgstr ""
 msgid "Failed notifying on %(topic)s payload %(payload)s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:784
+#: cinder/tests/fake_driver.py:57 cinder/volume/driver.py:788
 #, python-format
 msgid "FAKE ISCSI: %s"
 msgstr ""
 
-#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:884
+#: cinder/tests/fake_driver.py:76 cinder/volume/driver.py:888
 #, python-format
 msgid "FAKE ISER: %s"
 msgstr ""
@@ -3927,7 +3965,7 @@ msgstr ""
 msgid "Share %(share)s and file name %(file_name)s"
 msgstr ""
 
-#: cinder/tests/test_rbd.py:768 cinder/volume/drivers/rbd.py:175
+#: cinder/tests/test_rbd.py:837 cinder/volume/drivers/rbd.py:175
 msgid "flush() not supported in this version of librbd"
 msgstr ""
 
@@ -3936,12 +3974,12 @@ msgstr ""
 msgid "unrecognized argument %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1507
+#: cinder/tests/test_storwize_svc.py:1508
 #, python-format
 msgid "Run CLI command: %s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1510
+#: cinder/tests/test_storwize_svc.py:1512
 #, python-format
 msgid ""
 "CLI output:\n"
@@ -3949,7 +3987,7 @@ msgid ""
 " stderr: %(stderr)s"
 msgstr ""
 
-#: cinder/tests/test_storwize_svc.py:1515
+#: cinder/tests/test_storwize_svc.py:1517
 #, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -4035,7 +4073,7 @@ msgstr ""
 msgid "Volume in unexpected state"
 msgstr ""
 
-#: cinder/transfer/api.py:102 cinder/volume/api.py:367
+#: cinder/transfer/api.py:102 cinder/volume/api.py:381
 msgid "status must be available"
 msgstr ""
 
@@ -4066,175 +4104,194 @@ msgstr ""
 msgid "Volume %s has been transferred."
 msgstr ""
 
-#: cinder/volume/api.py:143
+#: cinder/volume/api.py:141
+msgid ""
+"Invalid volume_type provided (requested type must match source volume, or"
+" be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:148
+msgid ""
+"Invalid volume_type provided (requested type must match source snapshot, "
+"or be omitted). You should omit the argument."
+msgstr ""
+
+#: cinder/volume/api.py:157
 #, python-format
 msgid "Unable to query if %s is in the availability zone set"
 msgstr ""
 
-#: cinder/volume/api.py:171 cinder/volume/api.py:173
+#: cinder/volume/api.py:185 cinder/volume/api.py:187
 msgid "Failed to create api volume flow"
 msgstr ""
 
-#: cinder/volume/api.py:202
+#: cinder/volume/api.py:216
 msgid "Failed to update quota for deleting volume"
 msgstr ""
 
-#: cinder/volume/api.py:214
+#: cinder/volume/api.py:228
 #, python-format
 msgid "Volume status must be available or error, but current status is: %s"
 msgstr ""
 
-#: cinder/volume/api.py:224
+#: cinder/volume/api.py:238
 msgid "Volume cannot be deleted while migrating"
 msgstr ""
 
-#: cinder/volume/api.py:229
+#: cinder/volume/api.py:243
 #, python-format
 msgid "Volume still has %d dependent snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:285 cinder/volume/api.py:350
+#: cinder/volume/api.py:299 cinder/volume/api.py:364
 #: cinder/volume/qos_specs.py:240 cinder/volume/volume_types.py:67
 #, python-format
 msgid "Searching by: %s"
 msgstr ""
 
-#: cinder/volume/api.py:370
+#: cinder/volume/api.py:384
 msgid "already attached"
 msgstr ""
 
-#: cinder/volume/api.py:377
+#: cinder/volume/api.py:391
 msgid "status must be in-use to detach"
 msgstr ""
 
-#: cinder/volume/api.py:388
+#: cinder/volume/api.py:402
 #, fuzzy
 msgid "Volume status must be available to reserve"
 msgstr "Volume 狀態需要可被使用"
 
-#: cinder/volume/api.py:464
+#: cinder/volume/api.py:478
 msgid "Snapshot cannot be created while volume is migrating"
 msgstr ""
 
-#: cinder/volume/api.py:468
+#: cinder/volume/api.py:482
 msgid "must be available"
 msgstr ""
 
-#: cinder/volume/api.py:490
+#: cinder/volume/api.py:504
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create %(s_size)sG snapshot "
 "(%(d_consumed)dG of %(d_quota)dG already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:502
+#: cinder/volume/api.py:516
 #, python-format
 msgid ""
 "Quota exceeded for %(s_pid)s, tried to create snapshot (%(d_consumed)d "
 "snapshots already consumed)"
 msgstr ""
 
-#: cinder/volume/api.py:553
+#: cinder/volume/api.py:567
 #, fuzzy
 msgid "Volume Snapshot status must be available or error"
 msgstr "Volume 狀態需要可被使用"
 
-#: cinder/volume/api.py:581 cinder/volume/flows/api/create_volume.py:208
+#: cinder/volume/api.py:595 cinder/volume/flows/api/create_volume.py:208
 msgid "Metadata property key blank"
 msgstr ""
 
-#: cinder/volume/api.py:585
+#: cinder/volume/api.py:599
 msgid "Metadata property key greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:589
+#: cinder/volume/api.py:603
 msgid "Metadata property value greater than 255 characters"
 msgstr ""
 
-#: cinder/volume/api.py:720 cinder/volume/api.py:772
+#: cinder/volume/api.py:734 cinder/volume/api.py:808
 #, fuzzy
 msgid "Volume status must be available/in-use."
 msgstr "Volume 狀態需要可被使用"
 
-#: cinder/volume/api.py:723
+#: cinder/volume/api.py:737
 msgid "Volume status is in-use."
 msgstr ""
 
-#: cinder/volume/api.py:752
+#: cinder/volume/api.py:766
 msgid "Volume status must be available to extend."
 msgstr ""
 
-#: cinder/volume/api.py:757
+#: cinder/volume/api.py:771
 #, python-format
 msgid ""
 "New size for extend must be greater than current size. (current: "
 "%(size)s, extended: %(new_size)s)"
 msgstr ""
 
-#: cinder/volume/api.py:778
+#: cinder/volume/api.py:786
+#, python-format
+msgid ""
+"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
+"(%(d_consumed)dG of %(d_quota)dG already consumed)."
+msgstr ""
+
+#: cinder/volume/api.py:814
 msgid "Volume is already part of an active migration"
 msgstr ""
 
-#: cinder/volume/api.py:784
+#: cinder/volume/api.py:820
 msgid "volume must not have snapshots"
 msgstr ""
 
-#: cinder/volume/api.py:797
+#: cinder/volume/api.py:833
 #, python-format
 msgid "No available service named %s"
 msgstr ""
 
-#: cinder/volume/api.py:803
+#: cinder/volume/api.py:839
 msgid "Destination host must be different than current host"
 msgstr ""
 
-#: cinder/volume/api.py:833
+#: cinder/volume/api.py:869
 msgid "Source volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:837
+#: cinder/volume/api.py:873
 msgid "Destination volume not mid-migration."
 msgstr ""
 
-#: cinder/volume/api.py:842
+#: cinder/volume/api.py:878
 #, python-format
 msgid "Destination has migration_status %(stat)s, expected %(exp)s."
 msgstr ""
 
-#: cinder/volume/api.py:853
+#: cinder/volume/api.py:889
 msgid "Volume status must be available to update readonly flag."
 msgstr ""
 
-#: cinder/volume/api.py:862
+#: cinder/volume/api.py:898
 #, python-format
 msgid "Unable to update type due to incorrect status on volume: %s"
 msgstr ""
 
-#: cinder/volume/api.py:868
+#: cinder/volume/api.py:904
 #, python-format
 msgid "Volume %s is already part of an active migration."
 msgstr ""
 
-#: cinder/volume/api.py:874
+#: cinder/volume/api.py:910
 #, python-format
 msgid "migration_policy must be 'on-demand' or 'never', passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:887
+#: cinder/volume/api.py:923
 #, python-format
 msgid "Invalid volume_type passed: %s"
 msgstr ""
 
-#: cinder/volume/api.py:900
+#: cinder/volume/api.py:936
 #, python-format
 msgid "New volume_type same as original: %s"
 msgstr ""
 
-#: cinder/volume/api.py:915
+#: cinder/volume/api.py:951
 msgid "Retype cannot change encryption requirements"
 msgstr ""
 
-#: cinder/volume/api.py:927
+#: cinder/volume/api.py:963
 msgid "Retype cannot change front-end qos specs for in-use volumes"
 msgstr ""
 
@@ -4268,59 +4325,59 @@ msgstr ""
 msgid "copy_volume_to_image %s."
 msgstr ""
 
-#: cinder/volume/driver.py:394
+#: cinder/volume/driver.py:396
 #, python-format
 msgid "Unable to access the backend storage via the path %(path)s."
 msgstr ""
 
-#: cinder/volume/driver.py:433
+#: cinder/volume/driver.py:435
 #, python-format
 msgid "Creating a new backup for volume %s."
 msgstr ""
 
-#: cinder/volume/driver.py:451
+#: cinder/volume/driver.py:453
 #, python-format
 msgid "Restoring backup %(backup)s to volume %(volume)s."
 msgstr ""
 
-#: cinder/volume/driver.py:474
+#: cinder/volume/driver.py:476
 msgid "Extend volume not implemented"
 msgstr ""
 
-#: cinder/volume/driver.py:533 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
+#: cinder/volume/driver.py:535 cinder/volume/drivers/emc/emc_smis_iscsi.py:113
 msgid "ISCSI provider_location not stored, using discovery"
 msgstr ""
 
-#: cinder/volume/driver.py:546
+#: cinder/volume/driver.py:548
 #, python-format
 msgid "ISCSI discovery attempt failed for:%s"
 msgstr ""
 
-#: cinder/volume/driver.py:548
+#: cinder/volume/driver.py:550
 #, python-format
 msgid "Error from iscsiadm -m discovery: %s"
 msgstr ""
 
-#: cinder/volume/driver.py:595
+#: cinder/volume/driver.py:597
 #, fuzzy, python-format
 msgid "Could not find iSCSI export for volume %s"
 msgstr "找不到Volume %s"
 
-#: cinder/volume/driver.py:599 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
+#: cinder/volume/driver.py:601 cinder/volume/drivers/emc/emc_smis_iscsi.py:156
 #, python-format
 msgid "ISCSI Discovery: Found %s"
 msgstr ""
 
-#: cinder/volume/driver.py:696
+#: cinder/volume/driver.py:698
 msgid "The volume driver requires the iSCSI initiator name in the connector."
 msgstr ""
 
-#: cinder/volume/driver.py:726 cinder/volume/driver.py:845
-#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:359
+#: cinder/volume/driver.py:728 cinder/volume/driver.py:849
+#: cinder/volume/drivers/eqlx.py:247 cinder/volume/drivers/lvm.py:344
 #: cinder/volume/drivers/zadara.py:650
 #: cinder/volume/drivers/emc/emc_smis_common.py:859
 #: cinder/volume/drivers/emc/emc_smis_iscsi.py:235
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:602
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:606
 #: cinder/volume/drivers/netapp/iscsi.py:1032
 #: cinder/volume/drivers/netapp/iscsi.py:1419
 #: cinder/volume/drivers/nexenta/iscsi.py:538
@@ -4328,10 +4385,48 @@ msgstr ""
 msgid "Updating volume stats"
 msgstr ""
 
-#: cinder/volume/driver.py:924
+#: cinder/volume/driver.py:928
 msgid "Driver must implement initialize_connection"
 msgstr ""
 
+#: cinder/volume/iscsi.py:65 cinder/volume/iscsi.py:91
+#: cinder/volume/iscsi.py:234
+#, python-format
+msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:80
+#, python-format
+msgid ""
+"Skipping remove_export. No iscsi_target is presently exported for volume:"
+" %s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:100
+msgid "Detected inconsistency in provider_location id"
+msgstr ""
+
+#: cinder/volume/iscsi.py:101 cinder/volume/drivers/lvm.py:516
+#: cinder/volume/drivers/huawei/rest_common.py:1225
+#, python-format
+msgid "%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:184
+#, python-format
+msgid "Symbolic link %s not found"
+msgstr ""
+
+#: cinder/volume/iscsi.py:251
+#, python-format
+msgid "volume_info:%s"
+msgstr ""
+
+#: cinder/volume/iscsi.py:252
+#, python-format
+msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
+msgstr ""
+
 #: cinder/volume/manager.py:203
 #, python-format
 msgid "Driver path %s is deprecated, update your configuration to the new path."
@@ -4402,7 +4497,7 @@ msgstr ""
 msgid "volume is not local to this node"
 msgstr ""
 
-#: cinder/volume/manager.py:389
+#: cinder/volume/manager.py:389 cinder/volume/manager.py:674
 #, python-format
 msgid "volume %s: removing export"
 msgstr ""
@@ -4412,197 +4507,207 @@ msgstr ""
 msgid "Cannot delete volume %s: volume is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:422
+#: cinder/volume/manager.py:421
 msgid "Failed to update usages deleting volume"
 msgstr ""
 
 #: cinder/volume/manager.py:427
 #, python-format
-msgid "volume %s: glance metadata deleted"
-msgstr ""
-
-#: cinder/volume/manager.py:430
-#, python-format
-msgid "no glance metadata found for volume %s"
-msgstr ""
-
-#: cinder/volume/manager.py:434
-#, python-format
 msgid "volume %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:451
+#: cinder/volume/manager.py:444
 #, python-format
 msgid "snapshot %s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:462
+#: cinder/volume/manager.py:455
 #, python-format
 msgid "snapshot %(snap_id)s: creating"
 msgstr ""
 
-#: cinder/volume/manager.py:490
+#: cinder/volume/manager.py:483
 #, python-format
 msgid ""
 "Failed updating %(snapshot_id)s metadata using the provided volumes "
 "%(volume_id)s metadata"
 msgstr ""
 
-#: cinder/volume/manager.py:496
+#: cinder/volume/manager.py:489
 #, python-format
 msgid "snapshot %s: created successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:508 cinder/volume/manager.py:518
+#: cinder/volume/manager.py:501 cinder/volume/manager.py:511
 #, python-format
 msgid "snapshot %s: deleting"
 msgstr ""
 
-#: cinder/volume/manager.py:526
+#: cinder/volume/manager.py:519
 #, python-format
 msgid "Cannot delete snapshot %s: snapshot is busy"
 msgstr ""
 
-#: cinder/volume/manager.py:556
+#: cinder/volume/manager.py:549
 msgid "Failed to update usages deleting snapshot"
 msgstr ""
 
-#: cinder/volume/manager.py:559
+#: cinder/volume/manager.py:552
 #, python-format
 msgid "snapshot %s: deleted successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:579
+#: cinder/volume/manager.py:572
 msgid "being attached by another instance"
 msgstr ""
 
-#: cinder/volume/manager.py:583
+#: cinder/volume/manager.py:576
 msgid "being attached by another host"
 msgstr ""
 
-#: cinder/volume/manager.py:587
+#: cinder/volume/manager.py:580
 msgid "being attached by different mode"
 msgstr ""
 
-#: cinder/volume/manager.py:590
+#: cinder/volume/manager.py:583
 msgid "status must be available or attaching"
 msgstr ""
 
-#: cinder/volume/manager.py:698
+#: cinder/volume/manager.py:678
+#, python-format
+msgid "Error detaching volume %(volume)s, due to uninitialized driver."
+msgstr ""
+
+#: cinder/volume/manager.py:682
+#, python-format
+msgid "Error detaching volume %(volume)s, due to remove export failure."
+msgstr ""
+
+#: cinder/volume/manager.py:708
 #, python-format
 msgid "Uploaded volume %(volume_id)s to image (%(image_id)s) successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:760
+#: cinder/volume/manager.py:767 cinder/volume/manager.py:792
 #, python-format
 msgid "Unable to fetch connection information from backend: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:807
+#: cinder/volume/manager.py:775
+#, python-format
+msgid "Volume %s: creating export"
+msgstr ""
+
+#: cinder/volume/manager.py:783
+#, python-format
+msgid ""
+"Failed updating model of volume %(volume_id)s with driver provided model "
+"%(model)s"
+msgstr ""
+
+#: cinder/volume/manager.py:839
 #, python-format
 msgid "Unable to terminate volume connection: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:854
+#: cinder/volume/manager.py:886
 msgid "failed to create new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:857
+#: cinder/volume/manager.py:889
 msgid "timeout creating new_volume on destination host"
 msgstr ""
 
-#: cinder/volume/manager.py:880
+#: cinder/volume/manager.py:912
 #, python-format
 msgid "Failed to copy volume %(vol1)s to %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:909
+#: cinder/volume/manager.py:941
 #, python-format
 msgid ""
 "migrate_volume_completion: completing migration for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:921
+#: cinder/volume/manager.py:953
 #, python-format
 msgid ""
 "migrate_volume_completion is cleaning up an error for volume %(vol1)s "
 "(temporary volume %(vol2)s"
 msgstr ""
 
-#: cinder/volume/manager.py:940
+#: cinder/volume/manager.py:972
 #, python-format
 msgid "Failed to delete migration source vol %(vol)s: %(err)s"
 msgstr ""
 
-#: cinder/volume/manager.py:976
+#: cinder/volume/manager.py:1008
 #, python-format
 msgid "volume %s: calling driver migrate_volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1016
+#: cinder/volume/manager.py:1048
 msgid "Updating volume status"
 msgstr ""
 
-#: cinder/volume/manager.py:1024
+#: cinder/volume/manager.py:1056
 #, python-format
 msgid ""
 "Unable to update stats, %(driver_name)s -%(driver_version)s "
 "%(config_group)s driver is uninitialized."
 msgstr ""
 
-#: cinder/volume/manager.py:1044
+#: cinder/volume/manager.py:1076
 #, python-format
 msgid "Notification {%s} received"
 msgstr ""
 
-#: cinder/volume/manager.py:1091
-#, python-format
-msgid ""
-"Quota exceeded for %(s_pid)s, tried to extend volume by %(s_size)sG, "
-"(%(d_consumed)dG of %(d_quota)dG already consumed)"
-msgstr ""
-
-#: cinder/volume/manager.py:1103
+#: cinder/volume/manager.py:1111
 #, python-format
 msgid "volume %s: extending"
 msgstr ""
 
-#: cinder/volume/manager.py:1105
+#: cinder/volume/manager.py:1113
 #, python-format
 msgid "volume %s: extended successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1107
+#: cinder/volume/manager.py:1115
 #, python-format
 msgid "volume %s: Error trying to extend volume"
 msgstr ""
 
-#: cinder/volume/manager.py:1169
+#: cinder/volume/manager.py:1120
+#, python-format
+msgid "Volume %s: Error trying to extend volume"
+msgstr ""
+
+#: cinder/volume/manager.py:1180
 msgid "Failed to update usages while retyping volume."
 msgstr ""
 
-#: cinder/volume/manager.py:1170
+#: cinder/volume/manager.py:1181
 msgid "Failed to get old volume type quota reservations"
 msgstr ""
 
-#: cinder/volume/manager.py:1190
+#: cinder/volume/manager.py:1201
 #, python-format
-msgid "Volume %s: retyped succesfully"
+msgid "Volume %s: retyped successfully"
 msgstr ""
 
-#: cinder/volume/manager.py:1193
+#: cinder/volume/manager.py:1204
 #, python-format
 msgid ""
 "Volume %s: driver error when trying to retype, falling back to generic "
 "mechanism."
 msgstr ""
 
-#: cinder/volume/manager.py:1204
+#: cinder/volume/manager.py:1215
 msgid "Retype requires migration but is not allowed."
 msgstr ""
 
-#: cinder/volume/manager.py:1212
+#: cinder/volume/manager.py:1223
 msgid "Volume must not have snapshots."
 msgstr ""
 
@@ -4656,65 +4761,36 @@ msgstr ""
 msgid "name cannot be None"
 msgstr ""
 
-#: cinder/volume/utils.py:144
+#: cinder/volume/utils.py:145
 #, python-format
 msgid ""
 "Incorrect value error: %(blocksize)s, it may indicate that "
 "'volume_dd_blocksize' was configured incorrectly. Fall back to default."
 msgstr ""
 
-#: cinder/volume/volume_types.py:130
-#, python-format
-msgid ""
-"Default volume type is not found, please check default_volume_type "
-"config: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:131
-#: cinder/volume/drivers/block_device.py:143 cinder/volume/drivers/lvm.py:654
-#: cinder/volume/drivers/lvm.py:669
-#, python-format
-msgid "Skipping remove_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:157 cinder/volume/drivers/lvm.py:687
-#, python-format
-msgid ""
-"Skipping remove_export. No iscsi_target is presently exported for volume:"
-" %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:183 cinder/volume/drivers/lvm.py:483
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provision for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:200 cinder/volume/drivers/lvm.py:504
-#, python-format
-msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
-msgstr ""
-
-#: cinder/volume/drivers/block_device.py:272 cinder/volume/drivers/lvm.py:227
+#: cinder/volume/utils.py:199
 #, python-format
 msgid "Performing secure delete on volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:287
+#: cinder/volume/volume_types.py:130
 #, python-format
-msgid "Error unrecognized volume_clear option: %s"
+msgid ""
+"Default volume type is not found, please check default_volume_type "
+"config: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:311 cinder/volume/drivers/lvm.py:300
+#: cinder/volume/drivers/block_device.py:138 cinder/volume/drivers/lvm.py:283
 #: cinder/volume/drivers/zadara.py:509 cinder/volume/drivers/nexenta/nfs.py:189
 #, python-format
 msgid "Creating clone of volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:380
+#: cinder/volume/drivers/block_device.py:206
 msgid "No free disk"
 msgstr ""
 
-#: cinder/volume/drivers/block_device.py:393
+#: cinder/volume/drivers/block_device.py:219
 msgid "No big enough free disk"
 msgstr ""
 
@@ -4814,7 +4890,6 @@ msgid "EQL-driver: executing \"%s\""
 msgstr ""
 
 #: cinder/volume/drivers/eqlx.py:208
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:383
 #, python-format
 msgid "SSH Command failed after '%(total_attempts)r' attempts : '%(command)s'"
 msgstr ""
@@ -4898,207 +4973,222 @@ msgstr ""
 msgid "Failed to extend_volume %(name)s from %(current_size)sGB to %(new_size)sGB"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:86
+#: cinder/volume/drivers/glusterfs.py:101
 #, python-format
 msgid "There's no Gluster config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:91
+#: cinder/volume/drivers/glusterfs.py:106
 #, python-format
 msgid "Gluster config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:103
+#: cinder/volume/drivers/glusterfs.py:118
 msgid "mount.glusterfs is not installed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:161
+#: cinder/volume/drivers/glusterfs.py:176
 #, python-format
 msgid "Cloning volume %(src)s to volume %(dst)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:166
+#: cinder/volume/drivers/glusterfs.py:181
 msgid "Volume status must be 'available'."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:202 cinder/volume/drivers/nfs.py:122
+#: cinder/volume/drivers/glusterfs.py:217 cinder/volume/drivers/nfs.py:122
 #: cinder/volume/drivers/netapp/nfs.py:753
 #, python-format
 msgid "casted to %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:216
+#: cinder/volume/drivers/glusterfs.py:231
 msgid "Snapshot status must be \"available\" to clone."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:238
+#: cinder/volume/drivers/glusterfs.py:253
 #, python-format
 msgid "snapshot: %(snap)s, volume: %(vol)s, volume_size: %(size)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:257
+#: cinder/volume/drivers/glusterfs.py:272
 #, python-format
 msgid "will copy from snapshot at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:275 cinder/volume/drivers/nfs.py:172
+#: cinder/volume/drivers/glusterfs.py:290 cinder/volume/drivers/nfs.py:172
 #, python-format
 msgid "Volume %s does not have provider_location specified, skipping"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:373
+#: cinder/volume/drivers/glusterfs.py:388
 #, python-format
 msgid "Volume status must be \"available\" or \"in-use\" for snapshot. (is %s)"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:403
+#: cinder/volume/drivers/glusterfs.py:418
 #, python-format
 msgid "nova call result: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:405
+#: cinder/volume/drivers/glusterfs.py:420
 msgid "Call to Nova to create snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:427
+#: cinder/volume/drivers/glusterfs.py:442
 msgid "Nova returned \"error\" status while creating snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:431
+#: cinder/volume/drivers/glusterfs.py:446
 #, python-format
 msgid "Status of snapshot %(id)s is now %(status)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:444
+#: cinder/volume/drivers/glusterfs.py:459
 #, python-format
 msgid "Timed out while waiting for Nova update for creation of snapshot %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:456
+#: cinder/volume/drivers/glusterfs.py:471
 #, python-format
 msgid "create snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:457
+#: cinder/volume/drivers/glusterfs.py:472
 #, python-format
 msgid "volume id: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:532
+#: cinder/volume/drivers/glusterfs.py:547
 msgid "'active' must be present when writing snap_info."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:562
+#: cinder/volume/drivers/glusterfs.py:577
 #, python-format
 msgid "deleting snapshot %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:566
+#: cinder/volume/drivers/glusterfs.py:581
 msgid "Volume status must be \"available\" or \"in-use\"."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:582
+#: cinder/volume/drivers/glusterfs.py:597
 #, python-format
 msgid ""
 "Snapshot record for %s is not present, allowing snapshot_delete to "
 "proceed."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:587
+#: cinder/volume/drivers/glusterfs.py:602
 #, python-format
 msgid "snapshot_file for this snap is %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:608
+#: cinder/volume/drivers/glusterfs.py:623
 #, python-format
 msgid "No base file found for %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:625
+#: cinder/volume/drivers/glusterfs.py:640
 #, python-format
 msgid "No %(base_id)s found for %(file)s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:680
+#: cinder/volume/drivers/glusterfs.py:695
 #, python-format
 msgid "No file found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:690
+#: cinder/volume/drivers/glusterfs.py:705
 #, python-format
 msgid "No snap found with %s as backing file."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:701
+#: cinder/volume/drivers/glusterfs.py:716
 #, python-format
 msgid "No file depends on %s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:727
+#: cinder/volume/drivers/glusterfs.py:742
 #, python-format
 msgid "Check condition failed: %s expected to be None."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:778
+#: cinder/volume/drivers/glusterfs.py:793
 msgid "Call to Nova delete snapshot failed"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:796
+#: cinder/volume/drivers/glusterfs.py:811
 #, python-format
 msgid "status of snapshot %s is still \"deleting\"... waiting"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:802
+#: cinder/volume/drivers/glusterfs.py:817
 #, python-format
 msgid "Unable to delete snapshot %(id)s, status: %(status)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:815
+#: cinder/volume/drivers/glusterfs.py:830
 #, python-format
 msgid "Timed out while waiting for Nova update for deletion of snapshot %(id)s."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:904
+#: cinder/volume/drivers/glusterfs.py:919
 #, python-format
 msgid "%s must be a valid raw or qcow2 image."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:967
+#: cinder/volume/drivers/glusterfs.py:983
 msgid "Extend volume is only supported for this driver when no snapshots exist."
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:975
+#: cinder/volume/drivers/glusterfs.py:991
 #, python-format
 msgid "Unrecognized backing format: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:990
+#: cinder/volume/drivers/glusterfs.py:1006
 #, python-format
 msgid "creating new volume at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:993
+#: cinder/volume/drivers/glusterfs.py:1009
 #, python-format
 msgid "file already exists at %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1019 cinder/volume/drivers/nfs.py:159
+#: cinder/volume/drivers/glusterfs.py:1035 cinder/volume/drivers/nfs.py:159
 #, python-format
 msgid "Exception during mounting %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1021
+#: cinder/volume/drivers/glusterfs.py:1037
 #, python-format
 msgid "Available shares: %s"
 msgstr ""
 
-#: cinder/volume/drivers/glusterfs.py:1038
+#: cinder/volume/drivers/glusterfs.py:1054
 #, python-format
 msgid ""
 "GlusterFS share at %(dir)s is not writable by the Cinder volume service. "
 "Snapshot operations will not be supported."
 msgstr ""
 
+#: cinder/volume/drivers/glusterfs.py:1160
+msgid "Backup is not supported for GlusterFS volumes with snapshots."
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1175
+#, python-format
+msgid ""
+"No snapshots found in database, but %(path)s has backing file "
+"%(backing_file)s!"
+msgstr ""
+
+#: cinder/volume/drivers/glusterfs.py:1183
+msgid "Backup is only supported for raw-formatted GlusterFS volumes."
+msgstr ""
+
 #: cinder/volume/drivers/gpfs.py:96
 #, python-format
 msgid "GPFS is not active.  Detailed output: %s"
@@ -5169,56 +5259,36 @@ msgid ""
 "mounted."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:189
+#: cinder/volume/drivers/lvm.py:151
 #, python-format
-msgid "Unabled to delete due to existing snapshot for volume: %s"
+msgid "Volume device file path %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:215
+#: cinder/volume/drivers/lvm.py:158
 #, python-format
-msgid "Volume device file path %s does not exist."
+msgid "Size for volume: %s not found, cannot secure delete."
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:221
+#: cinder/volume/drivers/lvm.py:228
 #, python-format
-msgid "Size for volume: %s not found, cannot secure delete."
+msgid "Unabled to delete due to existing snapshot for volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:262
+#: cinder/volume/drivers/lvm.py:245
 #, python-format
 msgid "snapshot: %s not found, skipping delete operations"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:361
+#: cinder/volume/drivers/lvm.py:346
 #, python-format
 msgid "Unable to update stats on non-initialized Volume Group: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:462
+#: cinder/volume/drivers/lvm.py:449
 #, python-format
 msgid "Error creating iSCSI target, retrying creation for target: %s"
 msgstr ""
 
-#: cinder/volume/drivers/lvm.py:482
-#, python-format
-msgid "volume_info:%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:518
-msgid "Detected inconsistency in provider_location id"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:519 cinder/volume/drivers/lvm.py:724
-#: cinder/volume/drivers/huawei/rest_common.py:1225
-#, python-format
-msgid "%s"
-msgstr ""
-
-#: cinder/volume/drivers/lvm.py:573
-#, python-format
-msgid "Symbolic link %s not found"
-msgstr ""
-
 #: cinder/volume/drivers/nfs.py:109
 msgid "Driver specific implementation needs to return mount_point_base."
 msgstr ""
@@ -5238,42 +5308,42 @@ msgstr ""
 msgid "%s is already mounted"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:421
+#: cinder/volume/drivers/nfs.py:413
 #, python-format
 msgid "There's no NFS config file configured (%s)"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:426
+#: cinder/volume/drivers/nfs.py:418
 #, python-format
 msgid "NFS config file at %(config)s doesn't exist"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:431
+#: cinder/volume/drivers/nfs.py:423
 #, python-format
 msgid "NFS config 'nfs_oversub_ratio' invalid.  Must be > 0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:439
+#: cinder/volume/drivers/nfs.py:431
 #, python-format
 msgid "NFS config 'nfs_used_ratio' invalid.  Must be > 0 and <= 1.0: %s"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:493
+#: cinder/volume/drivers/nfs.py:485
 #, python-format
 msgid "Selected %s as target nfs share."
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:526
+#: cinder/volume/drivers/nfs.py:518
 #, python-format
 msgid "%s is above nfs_used_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:529
+#: cinder/volume/drivers/nfs.py:521
 #, python-format
 msgid "%s is above nfs_oversub_ratio"
 msgstr ""
 
-#: cinder/volume/drivers/nfs.py:532
+#: cinder/volume/drivers/nfs.py:524
 #, python-format
 msgid "%s reserved space is above nfs_oversub_ratio"
 msgstr ""
@@ -5483,177 +5553,177 @@ msgstr ""
 msgid "Sheepdog is not working"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:144
+#: cinder/volume/drivers/solidfire.py:142
 #, python-format
 msgid "Payload for SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:151
+#: cinder/volume/drivers/solidfire.py:149
 #, python-format
 msgid ""
 "Failed to make httplib connection SolidFire Cluster: %s (verify san_ip "
 "settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:154
+#: cinder/volume/drivers/solidfire.py:152
 #, python-format
 msgid "Failed to make httplib connection: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:161
+#: cinder/volume/drivers/solidfire.py:159
 #, python-format
 msgid ""
 "Request to SolidFire cluster returned bad status: %(status)s / %(reason)s"
 " (check san_login/san_password settings)"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:166
+#: cinder/volume/drivers/solidfire.py:164
 #, python-format
 msgid "HTTP request failed, with status: %(status)s and reason: %(reason)s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:177
+#: cinder/volume/drivers/solidfire.py:175
 #, python-format
 msgid "Call to json.loads() raised an exception: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:183
+#: cinder/volume/drivers/solidfire.py:181
 #, python-format
 msgid "Results of SolidFire API call: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:187
+#: cinder/volume/drivers/solidfire.py:185
 #, python-format
 msgid "Clone operation encountered: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:189
+#: cinder/volume/drivers/solidfire.py:187
 #, python-format
 msgid "Waiting for outstanding operation before retrying snapshot: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:195
+#: cinder/volume/drivers/solidfire.py:193
 #, python-format
 msgid "Detected xDBVersionMismatch, retry %s of 5"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:202
-#: cinder/volume/drivers/solidfire.py:271
-#: cinder/volume/drivers/solidfire.py:366
+#: cinder/volume/drivers/solidfire.py:200
+#: cinder/volume/drivers/solidfire.py:269
+#: cinder/volume/drivers/solidfire.py:364
 #, python-format
 msgid "API response: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:222
+#: cinder/volume/drivers/solidfire.py:220
 #, python-format
 msgid "Found solidfire account: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:253
+#: cinder/volume/drivers/solidfire.py:251
 #, python-format
 msgid "solidfire account: %s does not exist, create it..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:315
+#: cinder/volume/drivers/solidfire.py:313
 #, python-format
 msgid "Failed to retrieve volume SolidFire-ID: %s in get_by_account!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:398
+#: cinder/volume/drivers/solidfire.py:396
 msgid "Failed to get model update from clone"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:410
+#: cinder/volume/drivers/solidfire.py:408
 #, python-format
 msgid "Failed volume create: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:425
+#: cinder/volume/drivers/solidfire.py:423
 #, python-format
 msgid "More than one valid preset was detected, using %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:460
+#: cinder/volume/drivers/solidfire.py:458
 #, python-format
 msgid "Failed to get SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:469
+#: cinder/volume/drivers/solidfire.py:467
 #, python-format
 msgid "Mapped SolidFire volumeID %(sfid)s to cinder ID %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:478
+#: cinder/volume/drivers/solidfire.py:476
 #, python-format
 msgid "Volume %s, not found on SF Cluster."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:481
+#: cinder/volume/drivers/solidfire.py:479
 #, python-format
 msgid "Found %(count)s volumes mapped to id: %(uuid)s."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:550
+#: cinder/volume/drivers/solidfire.py:548
 msgid "Enter SolidFire delete_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:554
+#: cinder/volume/drivers/solidfire.py:552
 #, python-format
 msgid "Account for Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:556
+#: cinder/volume/drivers/solidfire.py:554
 msgid "This usually means the volume was never successfully created."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:569
+#: cinder/volume/drivers/solidfire.py:567
 #, python-format
 msgid "Failed to delete SolidFire Volume: %s"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:572
-#: cinder/volume/drivers/solidfire.py:646
-#: cinder/volume/drivers/solidfire.py:709
-#: cinder/volume/drivers/solidfire.py:734
+#: cinder/volume/drivers/solidfire.py:570
+#: cinder/volume/drivers/solidfire.py:644
+#: cinder/volume/drivers/solidfire.py:707
+#: cinder/volume/drivers/solidfire.py:732
 #, python-format
 msgid "Volume ID %s was not found on the SolidFire Cluster!"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:575
+#: cinder/volume/drivers/solidfire.py:573
 msgid "Leaving SolidFire delete_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:579
+#: cinder/volume/drivers/solidfire.py:577
 msgid "Executing SolidFire ensure_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:587
+#: cinder/volume/drivers/solidfire.py:585
 msgid "Executing SolidFire create_export..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:638
+#: cinder/volume/drivers/solidfire.py:636
 msgid "Entering SolidFire extend_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:660
+#: cinder/volume/drivers/solidfire.py:658
 msgid "Leaving SolidFire extend_volume"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:665
+#: cinder/volume/drivers/solidfire.py:663
 msgid "Updating cluster status info"
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:673
+#: cinder/volume/drivers/solidfire.py:671
 #, fuzzy
 msgid "Failed to get updated stats"
 msgstr "內文解碼失敗"
 
-#: cinder/volume/drivers/solidfire.py:703
-#: cinder/volume/drivers/solidfire.py:728
+#: cinder/volume/drivers/solidfire.py:701
+#: cinder/volume/drivers/solidfire.py:726
 msgid "Entering SolidFire attach_volume..."
 msgstr ""
 
-#: cinder/volume/drivers/solidfire.py:773
+#: cinder/volume/drivers/solidfire.py:771
 msgid "Leaving SolidFire transfer volume"
 msgstr ""
 
@@ -7061,123 +7131,123 @@ msgstr ""
 msgid "create_snapshot: %(device)s does not support snapshot."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:132
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:134
 msgid "enter: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:144
 #, python-format
 msgid "Failed getting details for pool %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:179
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:181
 msgid "do_setup: No configured nodes."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:182
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:184
 msgid "leave: do_setup"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:186
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:188
 msgid "enter: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:190
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:192
 msgid "Unable to determine system name"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:193
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:195
 msgid "Unable to determine system id"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:196
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:198
 msgid "Unable to determine pool extent size"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:203
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:205
 #: cinder/volume/drivers/netapp/iscsi.py:122
 #: cinder/volume/drivers/netapp/nfs.py:639
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:157
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:153
 #, python-format
 msgid "%s is not set"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:209
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:211
 msgid ""
 "Password or SSH private key is required for authentication: set either "
 "san_password or san_private_key option"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:217
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:219
 #, python-format
 msgid ""
 "Illegal value %d specified for storwize_svc_flashcopy_timeout: valid "
 "values are between 0 and 600"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:225
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:227
 msgid "leave: check_for_setup_error"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:237
 #, python-format
 msgid "ensure_export: Volume %s not found on storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:254
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:256
 msgid "The connector does not contain the required information."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:277
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:280
 #, python-format
 msgid "enter: initialize_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:297
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:300
 msgid "CHAP secret exists for host but CHAP is disabled"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:302
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:305
 #, python-format
 msgid "initialize_connection: Failed to get attributes for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:314
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:317
 #, python-format
 msgid "Did not find expected column name in lsvdisk: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:316
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:319
 #, python-format
 msgid "initialize_connection: Missing volume attribute for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:333
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:336
 #, python-format
 msgid ""
 "initialize_connection: No node found in I/O group %(gid)s for volume "
 "%(vol)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:342
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:345
 #, python-format
 msgid "initialize_connection: Did not find a preferred node for volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:365
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:368
 msgid ""
 "Could not get FC connection information for the host-volume connection. "
 "Is the host configured properly for FC connections?"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:380
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:383
 #, python-format
 msgid ""
 "initialize_connection: Failed to collect return properties for volume "
 "%(vol)s and connector %(conn)s.\n"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:385
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:388
 #, python-format
 msgid ""
 "leave: initialize_connection:\n"
@@ -7186,71 +7256,71 @@ msgid ""
 " properties: %(prop)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:403
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:407
 #, python-format
 msgid "enter: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:411
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:415
 msgid "terminate_connection: Failed to get host name from connector."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:421
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:425
 #, python-format
 msgid "leave: terminate_connection: volume %(vol)s with connector %(conn)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:447
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:451
 msgid "create_volume_from_snapshot: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:459
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:463
 msgid "create_cloned_volume: Source and destination size differ."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:470
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
 #, python-format
 msgid "enter: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:474
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:478
 msgid "extend_volume: Extending a volume with snapshots is not supported."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:481
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:485
 #, python-format
 msgid "leave: extend_volume: volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:497
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:501
 #, python-format
 msgid "enter: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:523
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:527
 #, python-format
 msgid "leave: migrate_volume: id=%(id)s, host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:540
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:544
 #, python-format
 msgid ""
 "enter: retype: id=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:581
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:585
 #, python-format
 msgid ""
 "exit: retype: ild=%(id)s, new_type=%(new_type)s,diff=%(diff)s, "
 "host=%(host)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:622
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:626
 msgid "Could not get pool data from the storage"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:623
+#: cinder/volume/drivers/ibm/storwize_svc/__init__.py:627
 msgid "_update_volume_stats: Could not get storage pool data"
 msgstr ""
 
@@ -7284,198 +7354,198 @@ msgstr ""
 msgid "enter: get_host_from_connector: %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:207
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:208
 #, python-format
 msgid "leave: get_host_from_connector: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:218
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:219
 #, python-format
 msgid "enter: create_host: host %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:224
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:225
 msgid "create_host: Host name is not unicode or string"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:235
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:236
 msgid "create_host: No initiators or wwpns supplied."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:265
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:266
 #, python-format
 msgid "leave: create_host: host %(host)s - %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:275
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:276
 #, python-format
 msgid "enter: map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:301
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:302
 #, python-format
 msgid ""
 "leave: map_vol_to_host: LUN %(result_lun)s, volume %(volume_name)s, host "
 "%(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:311
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:312
 #, python-format
 msgid "enter: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:318
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:319
 #, python-format
 msgid "unmap_vol_from_host: No mapping of volume %(vol_name)s to any host found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:324
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:325
 #, python-format
 msgid ""
 "unmap_vol_from_host: Multiple mappings of volume %(vol_name)s found, no "
 "host specified."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:336
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:337
 #, python-format
 msgid ""
 "unmap_vol_from_host: No mapping of volume %(vol_name)s to host %(host) "
 "found."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:348
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:349
 #, python-format
 msgid "leave: unmap_vol_from_host: volume %(volume_name)s from host %(host_name)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:377
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:378
 msgid ""
 "Illegal value specified for storwize_svc_vol_rsize: set to either a "
 "percentage (0-100) or -1"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:383
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:384
 msgid ""
 "Illegal value specified for storwize_svc_vol_warning: set to a percentage"
 " (0-100)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:390
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:391
 msgid ""
 "Illegal value specified for storwize_svc_vol_grainsize: set to either 32,"
 " 64, 128, or 256"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:397
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:398
 msgid "System does not support compression"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:402
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:403
 msgid "If compression is set to True, rsize must also be set (not equal to -1)"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:408
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:409
 #, python-format
 msgid ""
 "Illegal value %(prot)s specified for storwize_svc_connection_protocol: "
 "valid values are %(enabled)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:417
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:418
 #, python-format
 msgid "I/O group %(iogrp)d is not valid; available I/O groups are %(avail)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:452
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:453
 msgid "Protocol must be specified as '<in> iSCSI' or '<in> FC'."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:495
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:496
 #, python-format
 msgid "enter: create_vdisk: vdisk %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:498
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:499
 #, python-format
 msgid "leave: _create_vdisk: volume %s "
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:525
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:526
 #, python-format
 msgid ""
 "Unexecpted mapping status %(status)s for mapping%(id)s. Attributes: "
 "%(attr)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:535
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:536
 #, python-format
 msgid ""
 "Mapping %(id)s prepare failed to complete within theallotted %(to)d "
 "seconds timeout. Terminating."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:544
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:545
 #, python-format
 msgid ""
 "enter: run_flashcopy: execute FlashCopy from source %(source)s to target "
 "%(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:552
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:553
 #, python-format
 msgid "leave: run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:572
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:573
 #, python-format
 msgid "Loopcall: _check_vdisk_fc_mappings(), vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:595
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:596
 #, python-format
 msgid "Vdisk %(name)s not involved in mapping %(src)s -> %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:631
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:632
 #, python-format
 msgid "Calling _ensure_vdisk_no_fc_mappings: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:639
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:640
 #, python-format
 msgid "enter: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:641
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:642
 #, python-format
 msgid "Tried to delete non-existant vdisk %s."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:645
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:646
 #, python-format
 msgid "leave: delete_vdisk: vdisk %s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:649
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:650
 #, python-format
 msgid "enter: create_copy: snapshot %(src)s to %(tgt)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:654
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:655
 #, python-format
 msgid "create_copy: Source vdisk %(src)s (%(src_id)s) does not exist"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:669
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:670
 #, python-format
 msgid "leave: _create_copy: snapshot %(tgt)s from vdisk %(src)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:691
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:692
 msgid "migrate_volume started without a vdisk copy in the expected pool."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:743
+#: cinder/volume/drivers/ibm/storwize_svc/helpers.py:744
 #, python-format
 msgid ""
 "Ignore change IO group as storage code level is %(code_level)s, below "
@@ -7483,8 +7553,8 @@ msgid ""
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:35
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:211
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:244
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:212
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:245
 #, fuzzy, python-format
 msgid ""
 "CLI Exception output:\n"
@@ -7504,7 +7574,7 @@ msgid "Expected no output from CLI command %(cmd)s, got %(out)s"
 msgstr ""
 
 #: cinder/volume/drivers/ibm/storwize_svc/ssh.py:65
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:256
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:257
 #, python-format
 msgid ""
 "Failed to parse CLI output:\n"
@@ -7513,27 +7583,27 @@ msgid ""
 " stderr: %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:142
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:143
 msgid "Must pass wwpn or host to lsfabric."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:158
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:159
 #, python-format
 msgid "Did not find success message nor error for %(fun)s: %(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:163
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:164
 msgid ""
 "storwize_svc_multihostmap_enabled is set to False, not allowing multi "
 "host mapping."
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:347
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:348
 #, python-format
 msgid "Did not find expected key %(key)s in %(fun)s: %(raw)s"
 msgstr ""
 
-#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:382
+#: cinder/volume/drivers/ibm/storwize_svc/ssh.py:383
 #, python-format
 msgid ""
 "Unexpected CLI response: header/row mismatch. header: %(header)s, row: "
@@ -7638,7 +7708,7 @@ msgstr ""
 #: cinder/volume/drivers/netapp/iscsi.py:232
 #, python-format
 msgid ""
-"Succesfully fetched target details for LUN %(name)s and initiator "
+"Successfully fetched target details for LUN %(name)s and initiator "
 "%(initiator_name)s"
 msgstr ""
 
@@ -8401,42 +8471,6 @@ msgstr ""
 msgid "Invalid value: \"%s\""
 msgstr ""
 
-#: cinder/volume/drivers/san/hp_lefthand.py:93
-#, python-format
-msgid "CLIQ command returned %s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:99
-#, python-format
-msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:107
-#, python-format
-msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:137
-#, python-format
-msgid ""
-"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
-"Result=%(_xml)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:190
-#, python-format
-msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:246
-#, python-format
-msgid "Snapshot info: %(name)s => %(attributes)s"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp_lefthand.py:321
-msgid "local_path not supported"
-msgstr ""
-
 #: cinder/volume/drivers/san/san.py:169
 msgid "Specify san_password or san_private_key"
 msgstr ""
@@ -8455,160 +8489,240 @@ msgstr ""
 msgid "LUID not found for %(zfs_poolname)s. Output=%(out)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:166
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:162
 #, python-format
-msgid "Invalid hp3parclient version. Version %s or greater required."
+msgid ""
+"Invalid hp3parclient version found (%(found)s). Version %(minimum)s or "
+"greater required."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:179
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:184
 #, python-format
 msgid "Failed to Login to 3PAR (%(url)s) because %(err)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:193
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:198
 #, python-format
 msgid "HP3PARCommon %(common_ver)s, hp3parclient %(rest_ver)s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:212
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:494
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:217
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:401
 #, python-format
 msgid "CPG (%s) doesn't exist on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:228
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:225
 #, python-format
 msgid "Failed to get domain because CPG (%s) doesn't exist on array."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:247
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:244
 #, python-format
 msgid "Error extending volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:347
-#, python-format
-msgid "command %s failed"
-msgstr ""
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:390
-#, fuzzy, python-format
-msgid "Error running ssh command: %s"
-msgstr "非預期的執行錯誤"
-
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:586
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:487
 #, python-format
 msgid "VV Set %s does not exist."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:633
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:523
 #, python-format
 msgid "Must specify a valid persona %(valid)s, value '%(persona)s' is invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:684
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:574
 #, python-format
 msgid ""
 "Must specify a valid provisioning type %(valid)s, value '%(prov)s' is "
 "invalid."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:752
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:642
 #, python-format
 msgid "Volume (%s) already exists on array"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1004
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:866
 #, python-format
 msgid "Failure in update_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1019
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:880
 #, python-format
 msgid "Failure in clear_volume_key_value_pair:%s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1031
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:892
 #, python-format
 msgid "Error attaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_common.py:1039
+#: cinder/volume/drivers/san/hp/hp_3par_common.py:900
 #, python-format
 msgid "Error detaching volume %s"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:124
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:125
 #, python-format
 msgid "Invalid IP address format '%s'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:158
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:159
 #, python-format
 msgid ""
 "Found invalid iSCSI IP address(s) in configuration option(s) "
 "hp3par_iscsi_ips or iscsi_ip_address '%s.'"
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:164
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:165
 msgid "At least one valid iSCSI IP address must be set."
 msgstr ""
 
-#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:266
+#: cinder/volume/drivers/san/hp/hp_3par_iscsi.py:267
 msgid "Least busy iSCSI port not found, using first iSCSI port in list."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:75
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:89
+#, python-format
+msgid "CLIQ %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:104
+#, python-format
+msgid "CLIQ command returned %s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:110
+#, python-format
+msgid "Malformed response to CLIQ command %(verb)s %(cliq_args)s. Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:118
+#, python-format
+msgid "Error running CLIQ command %(verb)s %(cliq_args)s.  Result=%(out)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:148
+#, python-format
+msgid ""
+"Unexpected number of virtual ips for cluster  %(cluster_name)s. "
+"Result=%(_xml)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:201
+#, python-format
+msgid "Volume info: %(volume_name)s => %(volume_attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:257
+#, python-format
+msgid "Snapshot info: %(name)s => %(attributes)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:315
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:164
+msgid "Volume did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:327
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:197
+msgid "Snapshot did not exist. It will not be deleted"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_cliq_proxy.py:339
+msgid "local_path not supported"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_iscsi.py:73
+#, python-format
+msgid "HPLeftHand driver %(driver_ver)s, proxy %(proxy_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:34
+msgid "Module hplefthandclient not installed."
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:96
+msgid "HPLeftHand url not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:118
+msgid "LeftHand cluster not found"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:126
+#, python-format
+msgid "REST %(proxy_ver)s hplefthandclient %(rest_ver)s"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:314
+#, python-format
+msgid "'%(value)s' is an invalid value for extra spec '%(key)s'"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:334
+#, python-format
+msgid "CHAP secret exists for host %s but CHAP is disabled"
+msgstr ""
+
+#: cinder/volume/drivers/san/hp/hp_lefthand_rest_proxy.py:337
+#, python-format
+msgid "CHAP is enabled, but server secret not configured on server %s"
+msgstr ""
+
+#: cinder/volume/drivers/vmware/api.py:72
 #, python-format
 msgid "Failure while invoking function: %(func)s. Error: %(excep)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:162
+#: cinder/volume/drivers/vmware/api.py:157
 #, python-format
 msgid "Error while terminating session: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:165
+#: cinder/volume/drivers/vmware/api.py:160
 msgid "Successfully established connection to the server."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:172
+#: cinder/volume/drivers/vmware/api.py:167
 #, python-format
 msgid "Error while logging out the user: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:218
+#: cinder/volume/drivers/vmware/api.py:213
 #, python-format
 msgid ""
 "Not authenticated error occurred. Will create session and try API call "
 "again: %s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:258
+#: cinder/volume/drivers/vmware/api.py:248
 #, python-format
 msgid "Task: %(task)s progress: %(prog)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:262
+#: cinder/volume/drivers/vmware/api.py:252
 #, python-format
 msgid "Task %s status: success."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:266
-#: cinder/volume/drivers/vmware/api.py:271
+#: cinder/volume/drivers/vmware/api.py:255
+#: cinder/volume/drivers/vmware/api.py:259
 #, python-format
 msgid "Task: %(task)s failed with error: %(err)s."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:290
+#: cinder/volume/drivers/vmware/api.py:275
 msgid "Lease is ready."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:294
+#: cinder/volume/drivers/vmware/api.py:277
 msgid "Lease initializing..."
 msgstr ""
 
-#: cinder/volume/drivers/vmware/api.py:304
+#: cinder/volume/drivers/vmware/api.py:287
 #, python-format
 msgid "Error: unknown lease state %s."
 msgstr ""
@@ -9332,7 +9446,7 @@ msgid "Updating volume: %(volume_id)s with %(update)s due to: %(reason)s"
 msgstr ""
 
 #: cinder/volume/flows/common.py:90
-#: cinder/volume/flows/manager/create_volume.py:676
+#: cinder/volume/flows/manager/create_volume.py:653
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(update)s"
 msgstr ""
@@ -9425,7 +9539,7 @@ msgid "Failed to update quota for deleting volume: %s"
 msgstr ""
 
 #: cinder/volume/flows/api/create_volume.py:678
-#: cinder/volume/flows/manager/create_volume.py:192
+#: cinder/volume/flows/manager/create_volume.py:197
 #, python-format
 msgid "Volume %s: create failed"
 msgstr ""
@@ -9461,120 +9575,108 @@ msgstr ""
 msgid "Volume %s: rescheduling failed"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:308
+#: cinder/volume/flows/manager/create_volume.py:312
 #, python-format
 msgid ""
 "Failed notifying about the volume action %(event)s for volume "
 "%(volume_id)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:345
+#: cinder/volume/flows/manager/create_volume.py:348
 #, python-format
 msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:347
+#: cinder/volume/flows/manager/create_volume.py:350
 #, python-format
 msgid ""
 "Failed updating volume %(vol_id)s metadata using the provided "
 "%(src_type)s %(src_id)s metadata"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:405
+#: cinder/volume/flows/manager/create_volume.py:408
 #, python-format
 msgid ""
 "Failed fetching snapshot %(snapshot_id)s bootable flag using the provided"
 " glance snapshot %(snapshot_ref_id)s volume reference"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:418
+#: cinder/volume/flows/manager/create_volume.py:421
 #, python-format
 msgid "Marking volume %s as bootable."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:421
+#: cinder/volume/flows/manager/create_volume.py:424
 #, python-format
 msgid "Failed updating volume %(volume_id)s bootable flag to true"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:448
+#: cinder/volume/flows/manager/create_volume.py:451
 #, python-format
 msgid ""
 "Attempting download of %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:455
-#: cinder/volume/flows/manager/create_volume.py:466
+#: cinder/volume/flows/manager/create_volume.py:458
+#: cinder/volume/flows/manager/create_volume.py:469
 #, python-format
 msgid ""
 "Failed to copy image %(image_id)s to volume: %(volume_id)s, error: "
 "%(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:461
+#: cinder/volume/flows/manager/create_volume.py:464
 #, python-format
 msgid "Failed to copy image to volume: %(volume_id)s, error: %(error)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:475
+#: cinder/volume/flows/manager/create_volume.py:478
 #, python-format
 msgid ""
 "Downloaded image %(image_id)s (%(image_location)s) to volume "
 "%(volume_id)s successfully."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:512
+#: cinder/volume/flows/manager/create_volume.py:515
 #, python-format
 msgid ""
 "Creating volume glance metadata for volume %(volume_id)s backed by image "
 "%(image_id)s with: %(vol_metadata)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:526
+#: cinder/volume/flows/manager/create_volume.py:529
 #, python-format
 msgid ""
 "Cloning %(volume_id)s from image %(image_id)s  at location "
 "%(image_location)s."
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:552
+#: cinder/volume/flows/manager/create_volume.py:555
 #, python-format
 msgid "Failed updating volume %(volume_id)s with %(updates)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:574
+#: cinder/volume/flows/manager/create_volume.py:577
 #, python-format
 msgid "Unable to create volume. Volume driver %s not initialized"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:588
+#: cinder/volume/flows/manager/create_volume.py:591
 #, python-format
 msgid ""
 "Volume %(volume_id)s: being created using %(functor)s with specification:"
 " %(volume_spec)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:611
+#: cinder/volume/flows/manager/create_volume.py:610
 #, python-format
 msgid ""
 "Failed updating model of volume %(volume_id)s with creation provided "
 "model %(model)s"
 msgstr ""
 
-#: cinder/volume/flows/manager/create_volume.py:619
-#, python-format
-msgid "Volume %s: creating export"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:633
-#, python-format
-msgid ""
-"Failed updating model of volume %(volume_id)s with driver provided model "
-"%(model)s"
-msgstr ""
-
-#: cinder/volume/flows/manager/create_volume.py:680
+#: cinder/volume/flows/manager/create_volume.py:657
 #, python-format
 msgid "Volume %(volume_name)s (%(volume_id)s): created successfully"
 msgstr ""
@@ -10437,14 +10539,6 @@ msgstr ""
 #~ msgid "wait wrap.failed %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Report interval must be less than "
-#~ "service down time. Current config: "
-#~ "<service_down_time: %(service_down_time)s, "
-#~ "report_interval: %(report_interval)s>. Setting "
-#~ "service_down_time to: %(new_service_down_time)s"
-#~ msgstr ""
-
 #~ msgid "Failed to update iscsi target for volume %(name)s."
 #~ msgstr ""
 
@@ -10472,16 +10566,6 @@ msgstr ""
 #~ msgid "enter: _get_chap_secret_for_host: host name %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _get_chap_secret_for_host: host name "
-#~ "%(host_name)s with secret %(chap_secret)s"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "_create_host: Cannot clean host name. "
-#~ "Host name is not unicode or string"
-#~ msgstr ""
-
 #~ msgid "enter: _get_host_from_connector: %s"
 #~ msgstr ""
 
@@ -10500,19 +10584,9 @@ msgstr ""
 #~ msgid "enter: _map_vol_to_host: volume %(volume_name)s to host %(host_name)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "storwize_svc_multihostmap_enabled is set to "
-#~ "False, Not allow multi host mapping"
-#~ msgstr ""
-
 #~ msgid "volume %s mapping to multi host"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _map_vol_to_host: LUN %(result_lun)s, "
-#~ "volume %(volume_name)s, host %(host_name)s"
-#~ msgstr ""
-
 #~ msgid "enter: _delete_host: host %s "
 #~ msgstr ""
 
@@ -10525,230 +10599,293 @@ msgstr ""
 #~ msgid "_get_host_from_connector failed to return the host name for connector"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to any host found."
+#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: Multiple mappings of "
-#~ "volume %(vol_name)s found, no host "
-#~ "specified."
+#~ msgid "enter: _create_vdisk: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "terminate_connection: No mapping of volume "
-#~ "%(vol_name)s to host %(host_name)s found"
+#~ msgid "_prepare_fc_map: %s"
 #~ msgstr ""
 
-#~ msgid "protocol must be specified as '<in> iSCSI' or '<in> FC'"
+#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_vdisk: vdisk %s "
+#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_vdisk %(name)s - did not find success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find success "
-#~ "message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "create FC mapping from %(source)s to "
-#~ "%(target)s - did not find mapping "
-#~ "id in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s\n"
+#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to prepare FlashCopy"
-#~ " from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "enter: _is_vdisk_defined: vdisk %s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Unexecpted mapping status %(status)s for "
-#~ "mapping %(id)s. Attributes: %(attr)s"
+#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Mapping %(id)s prepare failed to "
-#~ "complete within the allotted %(to)d "
-#~ "seconds timeout. Terminating."
+#~ msgid "enter: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_prepare_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s with "
-#~ "exception %(ex)s"
+#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
 #~ msgstr ""
 
-#~ msgid "_prepare_fc_map: %s"
+#~ msgid "leave: _delete_vdisk: vdisk %s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_start_fc_map: Failed to start FlashCopy "
-#~ "from %(source)s to %(target)s.\n"
-#~ "stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "enter: _run_flashcopy: execute FlashCopy from"
-#~ " source %(source)s to target %(target)s"
+#~ msgid "_get_pool_attrs: Pool %s does not exist"
 #~ msgstr ""
 
-#~ msgid "leave: _run_flashcopy: FlashCopy started from %(source)s to %(target)s"
+#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
 #~ msgstr ""
 
-#~ msgid "enter: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
 #~ msgstr ""
 
-#~ msgid "_create_copy: Source vdisk %(src_vdisk)s (%(src_id)s) does not exist"
+#~ msgid "Updating volume %(volume_id)s with %(update)s"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_create_copy: cannot get source vdisk "
-#~ "%(src)s capacity from vdisk attributes "
-#~ "%(attr)s"
+#~ msgid "Volume %s: resetting 'creating' status failed"
 #~ msgstr ""
 
-#~ msgid "leave: _create_copy: snapshot %(tgt_vdisk)s from vdisk %(src_vdisk)s"
+#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
 #~ msgstr ""
 
-#~ msgid "enter: _get_flashcopy_mapping_attributes: mapping %s"
+#~ msgid "Marking volume %s as bootable"
+#~ msgstr ""
+
+#~ msgid "Host %(host)s is not up or doesn't exist."
 #~ msgstr ""
 
 #~ msgid ""
-#~ "leave: _get_flashcopy_mapping_attributes: mapping "
-#~ "%(fc_map_id)s, attributes %(attributes)s"
+#~ "rbd striping not supported - ignoring"
+#~ " configuration settings for rbd striping"
 #~ msgstr ""
 
-#~ msgid "enter: _is_vdisk_defined: vdisk %s "
+#~ msgid "backup_id required"
 #~ msgstr ""
 
-#~ msgid "leave: _is_vdisk_defined: vdisk %(vol)s with %(str)s "
+#~ msgid "discarding %(length)s bytes from offset %(offset)s"
 #~ msgstr ""
 
-#~ msgid "enter: _delete_vdisk: vdisk %s"
+#~ msgid "writing zeroes chunk %d"
 #~ msgstr ""
 
-#~ msgid "warning: Tried to delete vdisk %s but it does not exist."
+#~ msgid "transferring data between '%(src)s' and '%(dest)s'"
 #~ msgstr ""
 
-#~ msgid "leave: _delete_vdisk: vdisk %s"
+#~ msgid "transferred chunk %(chunk)s of %(chunks)s (%(rate)dK/s)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_add_vdisk_copy %(name)s - did not find"
-#~ " success message in CLI output.\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "transferring remaining %s bytes"
 #~ msgstr ""
 
-#~ msgid "_get_vdisk_copy_attrs: Could not get vdisk copy data"
+#~ msgid "creating base image '%s'"
 #~ msgstr ""
 
-#~ msgid "_get_pool_attrs: Pool %s does not exist"
+#~ msgid "deleting backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "enter: _execute_command_and_parse_attributes:  command %s"
+#~ msgid "no backup snapshot to delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "leave: _execute_command_and_parse_attributes:\n"
-#~ "command: %(cmd)s\n"
-#~ "attributes: %(attr)s"
+#~ msgid "trying diff format name format basename='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "_get_hdr_dic: attribute headers and values do not match.\n"
-#~ " Headers: %(header)s\n"
-#~ " Values: %(row)s"
+#~ msgid "base image still has %s snapshots so skipping base image delete"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ "stdout: %(out)s\n"
-#~ "stderr: %(err)s\n"
+#~ msgid "deleting base image='%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "%(fun)s: Failed with unexpected CLI output.\n"
-#~ " Command: %(cmd)s\n"
-#~ " stdout: %(out)s\n"
-#~ " stderr: %(err)s"
+#~ msgid "image busy, retrying %(retries)s more time(s) in %(delay)ss"
 #~ msgstr ""
 
-#~ msgid "Did not find expected column in %(fun)s: %(hdr)s"
+#~ msgid "max retries reached - raising error"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Volume size %(size)s cannot be lesser"
-#~ " than the snapshot size %(snap_size)s. "
-#~ "They must be >= original snapshot "
-#~ "size."
+#~ msgid "base backup image='%s' deleted)"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Clones currently disallowed when %(size)s "
-#~ "< %(source_size)s. They must be >= "
-#~ "original volume size."
+#~ msgid "deleting source snap '%s'"
 #~ msgstr ""
 
-#~ msgid ""
-#~ "Size of specified image %(image_size)s "
-#~ "is larger than volume size "
-#~ "%(volume_size)s."
+#~ msgid "performing differential transfer from '%(src)s' to '%(dest)s'"
+#~ msgstr ""
+
+#~ msgid "rbd diff op failed - (ret=%(ret)s stderr=%(stderr)s)"
+#~ msgstr ""
+
+#~ msgid "image '%s' not found - trying diff format name"
+#~ msgstr ""
+
+#~ msgid "diff format image '%s' not found"
+#~ msgstr ""
+
+#~ msgid "using --from-snap '%s'"
+#~ msgstr ""
+
+#~ msgid "source snap '%s' is stale so deleting"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Image minDisk size %(min_disk)s is "
-#~ "larger than the volume size "
-#~ "%(volume_size)s."
+#~ "snap='%(snap)s' does not exist in base"
+#~ " image='%(base)s' - aborting incremental "
+#~ "backup"
 #~ msgstr ""
 
-#~ msgid "Updating volume %(volume_id)s with %(update)s"
+#~ msgid "creating backup snapshot='%s'"
 #~ msgstr ""
 
-#~ msgid "Volume %s: resetting 'creating' status failed"
+#~ msgid "differential backup transfer completed in %.4fs"
 #~ msgstr ""
 
-#~ msgid "Copying metadata from %(src_type)s %(src_id)s to %(vol_id)s"
+#~ msgid "differential backup transfer failed"
 #~ msgstr ""
 
-#~ msgid "Marking volume %s as bootable"
+#~ msgid "creating base image='%s'"
+#~ msgstr ""
+
+#~ msgid "copying data"
+#~ msgstr ""
+
+#~ msgid "looking for snapshot of backup base '%s'"
+#~ msgstr ""
+
+#~ msgid "backup base '%s' has no snapshots"
+#~ msgstr ""
+
+#~ msgid "backup '%s' has no snapshot"
+#~ msgstr ""
+
+#~ msgid "backup should only have one snapshot but instead has %s"
+#~ msgstr ""
+
+#~ msgid "found snapshot '%s'"
+#~ msgstr ""
+
+#~ msgid "need non-zero volume size"
+#~ msgstr ""
+
+#~ msgid "forcing full backup"
+#~ msgstr ""
+
+#~ msgid "backup '%s' finished."
+#~ msgstr ""
+
+#~ msgid "adjusting restore vol size"
+#~ msgstr ""
+
+#~ msgid "trying incremental restore from base='%(base)s' snap='%(snap)s'"
+#~ msgstr ""
+
+#~ msgid "differential restore failed, trying full restore"
+#~ msgstr ""
+
+#~ msgid "restore transfer completed in %.4fs"
+#~ msgstr ""
+
+#~ msgid "rbd has %s extents"
+#~ msgstr ""
+
+#~ msgid "dest volume is original volume - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "destination has extents - forcing full copy"
+#~ msgstr ""
+
+#~ msgid "no restore point found for backup='%s', forcing full copy"
+#~ msgstr ""
+
+#~ msgid "forcing full restore"
+#~ msgstr ""
+
+#~ msgid "starting restore from Ceph backup=%(src)s to volume=%(dest)s"
+#~ msgstr ""
+
+#~ msgid "volume_file does not support fileno() so skipping fsync()"
+#~ msgstr ""
+
+#~ msgid "restore finished successfully."
+#~ msgstr ""
+
+#~ msgid "restore finished with error - %s"
+#~ msgstr ""
+
+#~ msgid "delete started for backup=%s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Attempting download of %(image_id)s "
-#~ "(%(image_location)s) to volume %(volume_id)s"
+#~ "rbd image not found but continuing "
+#~ "anyway so that db entry can be "
+#~ "removed"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished with warning"
+#~ msgstr ""
+
+#~ msgid "delete '%s' finished"
+#~ msgstr ""
+
+#~ msgid "no calling threads waiting for msg_id : %s, message : %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Downloaded image %(image_id)s (%(image_location)s)"
-#~ " to volume %(volume_id)s successfully"
+#~ "Number of call waiters is greater "
+#~ "than warning threshhold: %d. There could"
+#~ " be a MulticallProxyWaiter leak."
+#~ msgstr ""
+
+#~ msgid "Failed to sanitize %(item)s. Key error %(err)s"
+#~ msgstr ""
+
+#~ msgid "topic is %s."
+#~ msgstr ""
+
+#~ msgid "Matchmaker unregistered: %s, %s"
+#~ msgstr ""
+
+#~ msgid "volume %s: glance metadata deleted"
+#~ msgstr ""
+
+#~ msgid "no glance metadata found for volume %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Creating volume glance metadata for "
-#~ "volume %(volume_id)s backed by image "
-#~ "%(image_id)s with: %(vol_metadata)s"
+#~ "Quota exceeded for %(s_pid)s, tried to"
+#~ " extend volume by %(s_size)sG, "
+#~ "(%(d_consumed)dG of %(d_quota)dG already "
+#~ "consumed)"
+#~ msgstr ""
+
+#~ msgid "Volume %s: retyped succesfully"
+#~ msgstr ""
+
+#~ msgid "Skipping ensure_export. No iscsi_target provisioned for volume: %s"
+#~ msgstr ""
+
+#~ msgid "Error unrecognized volume_clear option: %s"
 #~ msgstr ""
 
 #~ msgid ""
-#~ "Cloning %(volume_id)s from image %(image_id)s"
-#~ "  at location %(image_location)s"
+#~ "Succesfully fetched target details for "
+#~ "LUN %(name)s and initiator %(initiator_name)s"
+#~ msgstr ""
+
+#~ msgid "Invalid hp3parclient version. Version %s or greater required."
 #~ msgstr ""
 
+#~ msgid "command %s failed"
+#~ msgstr ""
+
+#~ msgid "Error running ssh command: %s"
+#~ msgstr "非預期的執行錯誤"
+
-- 
2.45.2